kianian
دوشنبه 13 فروردین 1386, 15:02 عصر
سلام
خیلی وقته که برنامه نویسان PHP برای حرکت بین صفحات مشکل دارند مثلا در صفحه ای که نام کاربری و رمز عبور را چک می کنند تصمیم بگیرند گه به صفحه بعد بروند و یا صفحه را به صفحه دیگری هدایت کنند.
برای این کار اغلب برنامه نویسان از کد جاوا اسکریپت استفاده می کنند در واقع دستور window.open یا window.location را با پارامتر ورودی نام صفحه برروی سند HTML چاپ می کنند. این یک راه حال است اما PHP خود تابعی برای جابجائی دارد با نام header.
و اما header :
ابن تابع استفاده های بسیار زیادی دارد که در جای بهتری به آن خواهیم پرداخت.
فرمان بالا صفحه را به صفحه دیگر تغییر مسیر می دهد مثال :
if ( ($user=='admin') && ($pass=='123') )
{
header('Location: inbox.php');
}
else
{
header('Location: invalid.php');
}
خوب الان همه PHP کارها میگن برو بابا این که خطا می دهد و می گه :
Warning: Cannot modify header information - headers already sent by (output started at /home/www/........
درسته اما این خطا که حکایت از فرستاده شده بخش Header صفحه دارد مانع از اجرای فرمان Header می شود.
حالا به راه حل آن توجه کنید :
<?php
ob_start();
?>
<html>
<header>
....
</header>
<boby>
HTML and Your page Design Code
<?php
if ( ($user=='admin') && ($pass=='123') )
{
ob_end_clean();
header("Location: inbox.php");
exit;
}
else
{
ob_end_clean();
header("Location: invalid.php");
exit;
}
?>
<body>
توسط فرمان ob_end_clean شما بافر را تخلیه می کنید و حال می توانید Header را تغییر دهیدو
البته حتما باید مانند استفاده از Session در ابتدای صفحه ، اول اول اون را استارت کنید.
به مثال توجه کنید.
خوب مرسی از توجهتون فعلا خداحافظ .
----------------------------------------------------------
دارم از تو می نویسم
تو که غم داره نگات
اگه دوست داشتی بگو تا بازهم بگم برات
اینقده می گم تا خسته شم
با عشق تو شکسته شم.... !!!!!
خیلی وقته که برنامه نویسان PHP برای حرکت بین صفحات مشکل دارند مثلا در صفحه ای که نام کاربری و رمز عبور را چک می کنند تصمیم بگیرند گه به صفحه بعد بروند و یا صفحه را به صفحه دیگری هدایت کنند.
برای این کار اغلب برنامه نویسان از کد جاوا اسکریپت استفاده می کنند در واقع دستور window.open یا window.location را با پارامتر ورودی نام صفحه برروی سند HTML چاپ می کنند. این یک راه حال است اما PHP خود تابعی برای جابجائی دارد با نام header.
و اما header :
ابن تابع استفاده های بسیار زیادی دارد که در جای بهتری به آن خواهیم پرداخت.
فرمان بالا صفحه را به صفحه دیگر تغییر مسیر می دهد مثال :
if ( ($user=='admin') && ($pass=='123') )
{
header('Location: inbox.php');
}
else
{
header('Location: invalid.php');
}
خوب الان همه PHP کارها میگن برو بابا این که خطا می دهد و می گه :
Warning: Cannot modify header information - headers already sent by (output started at /home/www/........
درسته اما این خطا که حکایت از فرستاده شده بخش Header صفحه دارد مانع از اجرای فرمان Header می شود.
حالا به راه حل آن توجه کنید :
<?php
ob_start();
?>
<html>
<header>
....
</header>
<boby>
HTML and Your page Design Code
<?php
if ( ($user=='admin') && ($pass=='123') )
{
ob_end_clean();
header("Location: inbox.php");
exit;
}
else
{
ob_end_clean();
header("Location: invalid.php");
exit;
}
?>
<body>
توسط فرمان ob_end_clean شما بافر را تخلیه می کنید و حال می توانید Header را تغییر دهیدو
البته حتما باید مانند استفاده از Session در ابتدای صفحه ، اول اول اون را استارت کنید.
به مثال توجه کنید.
خوب مرسی از توجهتون فعلا خداحافظ .
----------------------------------------------------------
دارم از تو می نویسم
تو که غم داره نگات
اگه دوست داشتی بگو تا بازهم بگم برات
اینقده می گم تا خسته شم
با عشق تو شکسته شم.... !!!!!