PDA

View Full Version : مبتدی: set نشدن کوکی



mostafa272
سه شنبه 22 آذر 1390, 16:59 عصر
با سلام

می خوام کوکی رو ست کنم اما این ارور رو میده:
Warning: Cannot modify header information - headers already sent by

اینم کدش:


$user=$_POST['user'];
$pass=$_POST['pass'];
$conn = mysql_connect('localhost','root','');
mysql_select_db('madrese',$conn);
$sql ="SELECT * FROM users WHERE usercode='$user'and pass='$pass'";
$result1 = mysql_query($sql,$conn);

if(mysql_num_rows($result1) > 0)
{
setcookie('d',$user,time()+3600);


}

MMSHFE
سه شنبه 22 آذر 1390, 17:24 عصر
با سلام، این مشکل خیلی رایج هست و روش رفعش هم فوق العاده ساده است: فایلتون رو با یک ادیتور مناسب مثل ++Notepad یا Rapid PHP و... با کدگذاری UTF-8 without BOM ذخیره کنید. علت بروز این مشکل، ذخیره فایل بصورت UTF معمولی هست که باعث میشه سه بایت به نام Byte Order Mark یا همون BOM قبل از خود فایل برای مرورگر کاربر ارسال بشه و چون ارسال داده ها شروع شده، دیگه نمیتونید از توابع header و setcookie و... که کلاً میخوان اطلاعات هٍدٍر فایل رو تغییر بدن، استفاده کنید. روش رفعش رو هم که گفتم.
موفق باشید.

mostafa272
چهارشنبه 23 آذر 1390, 08:47 صبح
باتشکر ،این مشکل حل شد ولی یه مشکل دیگه پیش اومده اونم اینکه حروف فارسی رو درست نشون نمیده وقتی UTF-8 without BOM ذخیره شده باشه برای این مشکل چه باید کرد؟

MMSHFE
چهارشنبه 23 آذر 1390, 16:36 عصر
اين تگ رو در قسمت تگ head در صفحه قرار بدين:


<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

موفق باشيد.