• 1 رای - 3 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
اجرا نشدنheader در سرور
#1
سلام من این رو نوشتم
کد پی‌اچ‌پی:
if(isset($_REQUEST["marquee"]))
{
    
$op=$_REQUEST["marquee"];
    
if(
$op==2)
{
    
mysql_query("update news set news='$_POST[b1]',all_news='$_POST[FCKeditor]' where id=$_GET[id]");
    
header("Location:../marquee_mng.php");
    exit(
'');
    }
}
else{
print(
"nomarquee<br>");
}; 
سمت کلاینت درست اجرا می شه
اما سمت سرور دیتابیس update میشه ولی header عمل نمیکنه و else اجرا میشه
  پاسخ
تشکر شده توسط :
#2
سلام کسی نیست به من کمک کنه
  پاسخ
تشکر شده توسط :
#3
مشکل از اینجاست که متغییر فوق سراری $_REQUEST خالیه حالا دلیل خالی بودنش رو باید بررسی کنی که چرا اینجوریه .

$_REQUEST شامل مجموع مقادیر $_GET, $_POST , $_COOKIE. هست .
  پاسخ
تشکر شده توسط :
#4
سلام و ممنون .من همه REQUEST رو به get تغییر دادم. ولی کلا انگار هاست من با header مشکل داره
این ارور رو میده
نقل قول: Warning: Cannot modify header information - headers already sent by (output started at /home/nasimtra/public_html/admin/proccess/linktodb.php:2) in /home/nasimtra/public_html/admin/proccess/linktodb.php on line 37
این اولین باره که من به این مشکل بر خوردم.روی کلاینت همه چیز خوبه ولی روی سرور به هم می ریزه
مشکل از منه یا سرور؟
  پاسخ
تشکر شده توسط :
#5
کد کاملتو بذار
  پاسخ
تشکر شده توسط :
#6
کد پی‌اچ‌پی:
if($qur)
{
header("LOCATION:../links_mng.php");
exit(
'');
}
}
else
{
header("LOCATION:../links_mng.php");
exit(
'');
}; 
و اینکه کلا با تابع headr مشکل داره .ممکنه مشکل از سرور باشه
  پاسخ
تشکر شده توسط :
#7
تو اروری که گذاشتی از خط 37 ایراد گرفته
کد تو که 7 8 خط بیشتر نیست

فایلتو با یه hex editor باز کن ببین قبل <?php چند تا کاراکتر اضافی هست یا نه ؟
  پاسخ
تشکر شده توسط : scooter
#8
همونطور که ناصرخان گفتن شما قبل از header خروجی HTML دارین
می تونیم فیل رو ضمیمه کنید...

php manual:
نقل قول:به یاد داشته باشید که در هدر () نامیده می شود باید قبل از هر خروجی واقعی است که خبر ، یا توسط برچسب متنی عادی ، خط خالی در یک فایل ، یا از PHP. It is a very common error to read code with include() , or require() , functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file. از آن است که یک خطای بسیار رایج برای خواندن کد با include_once () ، و یا نیاز به () ، توابع ، و یا یک فایل دیگر تابع دسترسی داشته و دارند و یا خطوط فضاهای خالی که قبل از هدر خروجی () نامیده می شود. این همان مشکل وجود دارد که با استفاده از یک مجرد PHP / فایل متنی.

البته این ترجمه گوگله
  پاسخ
تشکر شده توسط : scooter


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان