نمایش نتایج 1 تا 15 از 15

نام تاپیک: Redirect در PHP

  1. #1

    Redirect در PHP

    سلام
    من یک کد معادل این کد در php احتیاج دارم


    response.redirect "index.htm"



    خیلی متشکرم

  2. #2

    <?php
    header("Location: http://".$_SERVER['HTTP_HOST']
    .dirname($_SERVER['PHP_SELF'])
    ."/".$relative_url);
    ?>
    OR:

    <?php
    header("Location: http://www.yahoo.com/"); /* Redirect browser */

    /* Make sure that code below does not get executed when we redirect. */
    exit;
    ?>


  3. #3
    سلام
    من از این کد استفاده کردم ولی این پیغام خطا را به من می دهد:


    Warning: Cannot add header information - headers already sent by (output started at /home/virtual/site107/fst/var/www/html/send.php:2) in /home/virtual/site107/fst/var/www/html/send.php on line 69

  4. #4
    سلام
    کسی نیست که به من جواب بدهد؟

  5. #5
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    چرا نیست برادر من. این کد رو امتحان کن:
    <?php

    // If no headers are sent, send one
    if (!headers_sent()) {
    header ('Location: http://www.example.com/');
    exit;
    }

    // An example using the optional file and line parameters, as of PHP 4.3.0
    // Note that $filename and $linenum are passed in for later use.
    // Do not assign them values beforehand.
    if (!headers_sent($filename, $linenum)) {
    header ('Location: http://www.example.com/');
    exit;

    // You would most likely trigger an error here.
    } else {

    print "Headers already sent in $filename on line $linenum\n" .
    "Cannot redirect, for now please click this <a " .
    "href=\"http://www.example.com\">link</a> instead\n";
    exit;
    }

    ?>

  6. #6
    کاربر دائمی آواتار jirjirakk
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    wwwroot
    پست
    660
    1- قبل از اجرای دستور هدر نباید هیچ گونه چیزی رو به خروجی فرستاده باشی.
    2- میتونی از ob_... استفاده کنی

  7. #7
    سلام
    اینکه قبل از اجرای دستور هدر نباید هیچ گونه چیزی رابه خروجی فرستاده باشیم یعنی چی؟
    متشکرم

  8. #8
    کاربر دائمی آواتار jirjirakk
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    wwwroot
    پست
    660
    یعنی این که اصلا نباید قبلش با دستور echo یا print یا ... پیامی رو به خروجی فرستاده باشی
    این پیام خطا هم که میفرسته همون رو میگه

    headers already sent by 

  9. #9
    ببین را حت ترین کار اینه که از java script استفاده کنی برای redirect

  10. #10

    Question

    سلام

    می توانید روش redirect را با javascript توضیح دهید یا یک مثال ساده بنویسید

    با تشکر

  11. #11
    کاربر تازه وارد آواتار farzad_vb62
    تاریخ عضویت
    مهر 1385
    محل زندگی
    پاریس ایران
    پست
    63
    نقل قول نوشته شده توسط balis_pascal مشاهده تاپیک
    سلام

    می توانید روش redirect را با javascript توضیح دهید یا یک مثال ساده بنویسید

    با تشکر
    خیلی ساده هستش
    مثال :
    window.location="index.html"

  12. #12
    کاربر تازه وارد آواتار farzad_vb62
    تاریخ عضویت
    مهر 1385
    محل زندگی
    پاریس ایران
    پست
    63
    نقل قول نوشته شده توسط mostafa612003 مشاهده تاپیک
    سلام
    من یک کد معادل این کد در php احتیاج دارم


    response.redirect "index.htm"

    خیلی متشکرم
    اینم تابع redirect توی php:


    // func: redirect($to,$code=307)
    // spec: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
    function redirect($to,$code=301)
    {
    $location = null;
    $sn = $_SERVER['SCRIPT_NAME'];
    $cp = dirname($sn);
    if (substr($to,0,4)=='http') $location = $to; // Absolute URL
    else
    {
    $schema = $_SERVER['SERVER_PORT']=='443'?'https':'http';
    $host = strlen($_SERVER['HTTP_HOST'])?$_SERVER['HTTP_HOST']:$_SERVER['SERVER_NAME'];
    if (substr($to,0,1)=='/') $location = "$schema://$host$to";
    elseif (substr($to,0,1)=='.') // Relative Path
    {
    $location = "$schema://$host/";
    $pu = parse_url($to);
    $cd = dirname($_SERVER['SCRIPT_FILENAME']).'/';
    $np = realpath($cd.$pu['path']);
    $np = str_replace($_SERVER['DOCUMENT_ROOT'],'',$np);
    $location.= $np;
    if ((isset($pu['query'])) && (strlen($pu['query'])>0)) $location.= '?'.$pu['query'];
    }
    }

    $hs = headers_sent();
    if ($hs==false)
    {
    if ($code==301) header("301 Moved Permanently HTTP/1.1"); // Convert to GET
    elseif ($code==302) header("302 Found HTTP/1.1"); // Conform re-POST
    elseif ($code==303) header("303 See Other HTTP/1.1"); // dont cache, always use GET
    elseif ($code==304) header("304 Not Modified HTTP/1.1"); // use cache
    elseif ($code==305) header("305 Use Proxy HTTP/1.1");
    elseif ($code==306) header("306 Not Used HTTP/1.1");
    elseif ($code==307) header("307 Temorary Redirect HTTP/1.1");
    else trigger_error("Unhandled redirect() HTTP Code: $code",E_USER_ERROR);
    header("Location: $location");
    header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
    }
    elseif (($hs==true) || ($code==302) || ($code==303))
    {
    // todo: draw some javascript to redirect
    $cover_div_style = 'background-color: #ccc; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%;';
    echo "\n";
    $link_div_style = 'background-color: #fff; border: 2px solid #f00; left: 0px; margin: 5px; padding: 3px; ';
    $link_div_style.= 'position: absolute; text-align: center; top: 0px; width: 95%; z-index: 99;';
    echo "\n";
    echo "Please See: ".htmlspecialchars($location)."
    \n";
    echo "\n\n";
    }
    exit(0);
    }

  13. #13
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    کاشان
    سن
    41
    پست
    505
    همین جناب redirect رو توی manual پی اچ پی جستجو کن.با مثال خیلی خوب توضیح داده.

  14. #14

  15. #15

    نقل قول: Redirect در PHP

    من از کد زیر استفاده میکنم
    header('Location: http://www.example.com/');

تاپیک های مشابه

  1. طریقه redirect
    نوشته شده توسط mmehdyt در بخش PHP
    پاسخ: 3
    آخرین پست: شنبه 14 بهمن 1385, 18:44 عصر
  2. Redirect و نمایش پیغام به کاربر
    نوشته شده توسط iekrang در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: جمعه 17 شهریور 1385, 14:34 عصر
  3. پاس کردن مقدار به URL بدون redirect
    نوشته شده توسط OlympicTelecom در بخش ASP.NET Web Forms
    پاسخ: 16
    آخرین پست: سه شنبه 14 شهریور 1385, 22:01 عصر
  4. مشکل با redirect
    نوشته شده توسط nima_dir در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: یک شنبه 05 شهریور 1385, 06:40 صبح
  5. redirect
    نوشته شده توسط roya2002_80 در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: پنج شنبه 19 مرداد 1385, 20:53 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •