PDA

نسخه کامل مشاهده نسخه کامل : پیغام خطا هنگام استفاده از sessionدر php



parisml
09-06-2007, 15:43
سلام

من بعد از تعریف session و استفاده از اون، warning زیر رو روی صفحه خروجی دارم: در حالی که خروجی هم درست جواب میده ولی هرکاری می کنم warning از روی صفحه حذف نمی شه:

Warning: Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp\[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) in c:\program files\easyphp\[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] on line 1


لازم به ذکره که من هیچ خط یا فاصله خالی هم بین تگ php و تعریف session نگذاشته ام ، چون این warning بیشتر از این امر ناشی میشه، ولی باز هم اون رو میبینم

خیلی خیلی ممنون میشم اگه بتونین منو راهنمایی کنین

jhoseinii
09-06-2007, 22:07
قبل از این دستور نباشد خروجی html داشته باشید
حتی به کارکتر!!

ali_nioton
10-06-2007, 06:57
قبل از Start Session هیچ چیزی نباید ارسال بشه
اگه از یو تی اف استفاده میکنی دقت کن دکودر به صفحه وصل نباشه

parisml
10-06-2007, 09:36
قبل از Start Session هیچ چیزی نباید ارسال بشه
اگه از یو تی اف استفاده میکنی دقت کن دکودر به صفحه وصل نباشه


با تشکر از راهنمایی شما، مشکل من دقیقا همین استفاده از یو تی اف بود، که وقتی برش داشتم حل شد
ولی الان یه مشکل جدید پیش اومده : دیگه محتویات ارسالی از mysql درست نشون داده نمی شه یعنی چون charset رو تعریف نکردم محتویات فارسی درست نشون داده نمی شه

وقتی هم که بعد از تعریف session کدهای زیر را برای تعریف charset وارد می کنم ، اصلا خروجی ندارم،یعنی به جای خروجی یه صفحه سفید باز میشه:

echo"<html dir=rtl >";
echo"<meta [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] content=fa>";
echo"<meta [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] content=text/html; charset=utf-8>";


اگه بتونید در این مورد هم راهنمایی کنید، بی نهایت ممنون میشم

jhoseinii
10-06-2007, 22:07
تعریف charset رو بعد از session_start انجام بده
مشکلی پیش نمیاد

ali_nioton
11-06-2007, 07:57
آره
البته منظور من خود یو تی اف نبود
اگه با دریم کارمیکنی پراپرتیز صفحه رو باز کن
کدینگ رو بیار
یوتی اف رو تننظیم کن فقط اون تیک پایین که دکودر رو به صفحه میچسبونه بردار

parisml
11-06-2007, 10:49
من از notepad استفاده می کنم
موقع Save کردن فایل encoding رو utf8 تعریف می کردم که همون طور که گفتم چون با session کارنمیکرد
اونو به ansi تغییر دادم که مشکل session برطرف شد ولی حالا دیگه نمایش محتویات فارسی صفحه مشکل داره، وقتی هم که بعد از session_start سعی می کنم charset روutf8 تعریف کنم ، اصلا خروجی ندارم،یعنی فقط یه صفحه سفید باز میشه ، هرکاری هم کردم اصلا و ابدا درست نشد که نشد.........:41:

حتی با php designer 2007 هم سعی کردم charset رو utf ست کنم که اون هم جواب نداد.....

آیا اگه dreamweaver، این کار رو انجام بدم حتما جواب میده؟ راه حل دیگه ای وجود نداره؟

peyman1987
11-06-2007, 17:55
دوست عزيز من تا حالا فقط اديتور phpdesigner 2007 رو ديدم که ميتونه اون سه تا کاراکتر يونيکود اول صفحه رو که نوت پد اضافه ميکنه رو نشون بده و شما ميتونين راحت پاکش کنين و هيچ مشکلي هم نداشته باشين با فارسي. بايد صفحه رو با phpdesigner طراحي کنين بعد با notepad بازش کنين و با انکودينگ يونيکد save as کنين و در انتها دوباره با phpdesigner بازش کنين و سه کاراکتر اول رو که اضافه شده رو پاک کنين و دوباره صفحه رو save کنين.

ali_nioton
12-06-2007, 06:47
دقیقا همونه که آقا پیمان گفت
not pad چند تا کاراکتر اضافه میکنه
من با دریم ویور مینویسم
همونطور که گفتم دریم هم این کار رو میکنه
البته چیزی به شما نشون نمیده که دستی بری پاک کنی
کافیه اون تیکی که گفتم رو برداری
مطمئن باش کار میکنه
دریم ویوره شوخی که نیس

parisml
12-06-2007, 09:12
دوستان عزیز ، از شما به خاطر راهنمایی های مفیدتون متشکرم

مشکل من با کمک شما عزیزان حل شد

امیدوارم همیشه شاد و پیروز باشید :11: