PDA

View Full Version : سوال: اجرا نشدن دستور header



nsco_nsco
چهارشنبه 08 آذر 1391, 19:11 عصر
سلام این دستور را در فایلهای پی اچ پی قرار دادم در سرور لینوکس با سی پنل این کار نمیکنه باید چه کنم؟
header('LOCATION: user_main.php');
فقط سریع پاسخ بدید ممنون

$ M 3 H R D A D $
چهارشنبه 08 آذر 1391, 19:58 عصر
<?php
/* This will give an error. Note the output
* above, which is before the header() call */
header('Location: http://www.example.com/');
?>

2undercover
چهارشنبه 08 آذر 1391, 20:08 عصر
اینجوری بنویسید:
header('Location: user_main.php');

اگر کار نکرد مطمئن بشید که بافر رو در ابتدای صفحه باز کردید:
ob_start();

Unique
چهارشنبه 08 آذر 1391, 21:18 عصر
دوست عزیز header را باید قبل از ارسال هر مقداری به client انجام بدین حتی BOM فایل هم میتونه باعث عدم اجرا شدن دستور بشه ! (BOM مربوط به utf-8 بودن فایل هست که در زمان save یا از طریق تنظیمات ویراستار مثلا توی dreamweaver میشه مانعش شد)

اگه نمیتونید خودتون را با این موضوع وفق بدین از ob_start استفاده کنید.

nsco_nsco
چهارشنبه 08 آذر 1391, 21:28 عصر
سلام مرسی بازم نشد دستور جاگزین چیزی هست؟

nsco_nsco
چهارشنبه 08 آذر 1391, 21:29 عصر
سلام ممنون میشم یک مثال به همراه یک دستور جا گزین که این دنگ و فنگها برای انتقال نداره بدید ممنون

nsco_nsco
چهارشنبه 08 آذر 1391, 22:59 عصر
بازم سلام
بجز این مشکل مشکل بعدی اینه که من با ومپ یه اسکریپت نوشتم درست کار می کنه با ومپ سرور رو کامپیوترم میریزمش تو سی پنل و رو هاست باز نمیکنه صفحات رو و اصلا ایف ها رو هم اجرا نمی کنه این دلیلش به نظرتون چیه؟

hidensoft
پنج شنبه 09 آذر 1391, 20:32 عصر
در مورد جایگزین هنوز که نساختن دلیلی هم نداره ولی خب شما می تونید تا ۲۰۲۰ منتظر بمونید شاید یکی یه جایگذین نوشت.
در مورد اجرا نشدن اسکریپت : حتما نمایش خطا خاموشه با ini_set نمایش خطا رو روشن کنید تا خطا رو ببیند. اگر قبل از header هیچیزی رو به کلاینت ارسال نمی کنید و هنوز header کار نمی کنه مشکل از ادیتور شماست. احتمالا notepad استفاده می کنید درسته ؟ از ادیتور مناسب استفاده کنید در بد ترین حالت notepad++

nsco_nsco
شنبه 11 آذر 1391, 03:04 صبح
سلام ممنونم از پاسختون ببینید این فایل من یک سری دستورات ذکر شده بعد یکی دو ایف شرط منظورمه و بعد اینکه مثلا فلان عدد شد برو به این صفحه بپر اگر فلان ایف اوکی شد برو به اون یکی صفحه اینطوری هست اما متاسفانه این ایفها همشون اجرا می شن اما موقعی که باید پرش کنه نمیره موندم العان چه کنم این هندل ها را تا این مهم را انجام بدن ممنون میشم راهنمایی کنید کلیه کارهایی که گفتید کردم اما باز درست نشد .

nsco_nsco
شنبه 11 آذر 1391, 03:08 صبح
بازم سلام کد تقریبا به این صورت هست که کار نمیکنه :


<?php
session_start();
error_reporting(E_ALL);
ini_set('display_errors','On');
ob_start();
include('config.php');
if($rob=="1") {
header('LOCATION: sub/a.php');
}
if($rob=="2") {
header('LOCATION: sub/b.php');
}
if($rob=="3") {
header('LOCATION: sub/c.php');
}
else {
header('LOCATION: d.php');
}
?>


ممنون میشم سریع کمک کنید دوستان مرسی.:لبخندساده:

nsco_nsco
شنبه 11 آذر 1391, 05:08 صبح
سلام دوستان یه دستور به این صورت مشکل هدیر را حل کرد


echo "<script>document.location='/ss/p.php</script

jionelmessi
شنبه 11 آذر 1391, 08:30 صبح
اینم میتونه عدر منه ولی باید این دستورا java script کاربر فعال باشه


echo '<meta http-equiv="refresh" content="1;url=addres page" />';


در ضمن ob_start من شنیدم باس بالا تر از همه کدا بزاری یعنی کدی قبلش نباشه

hidensoft
شنبه 11 آذر 1391, 18:02 عصر
من نفهمیدم که چطوری حل شد ولی خوبه که حل شد.

nsco_nsco
شنبه 11 آذر 1391, 23:32 عصر
سلام
مشکل مال فایل php.ini سرور بود دست کاریش کردم درست شد بازم ممنونم دوستان