PDA

View Full Version : مشکل در هاست و session در php



hosseinshaker
یک شنبه 21 مهر 1398, 18:48 عصر
با سلام خدمت دوستان عزیز
من ی پروژه نوشتم که در لوکال هاست به خوبی کار میکنه ولی روی هاست خیر!
با پشتیبانی هم تماس گرفتم نسخه phpرو تغییر دادم،فایل هامو داخل نوت پد++ فرمتشون رو bom to utf-8کردم فایل هارو بررسی کردم ولی اصلا جواب نداد و مشکلم اینه هیچ اطلاعاتی اینسرت نمیشه ولی حذف و اپدیت و نمایش هیچ مشکلی نداره و اروری که داخل لاگ به من نشون میده اینه:

[13-Oct-2019 15:30:24 UTC] PHP Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at
/home/sitename/public_html/panel/posts.php:1) in /home/sitename/public_html/panel/session.php on line 2

هرکاری که کردم جواب نداد از دوستانی که تجربه این ارور رو داشتن تقاضا میکنم کمک کنن.فایل سشن من اینه

<?php
session_start();
?>

سشن رو همه جا امتحان کردم ولی جواب نمیده.کلا با دستور header و session مشکل داره

plague
یک شنبه 21 مهر 1398, 20:31 عصر
قبل از اینکه سشن رو استارت کنی نباید هیچ خروجی یا کدی داشته باشی تو صفحت
همچنین هدر رو بخای استفاده کنی نباید هیچ خروجی داشته باشی تو صفحه


منظور از خروجی میتونه echo باشه یا حتی یک فضای خالی قبل از تگ php
مثلا یه اینتر بزنی بعد تگ php رو باز کنی یعنی تو سطر اول کدت خالی باشه و تو سطر دوم تگ php باز بشه
اون سطر خالی میشه یک خروجی که کار رو خراب میکنه

همچنین چک کن تو صفحاتت بعد از اینکه تگ php رو بستی هم فضای خالی نباشه
معمولا چیز یکه خراب میکنه اینا رو همین سطر ها و فضا های خالی قبل و بعد از تگ php هستن

hosseinshaker
یک شنبه 21 مهر 1398, 20:36 عصر
قبل از اینکه سشن رو استارت کنی نباید هیچ خروجی یا کدی داشته باشی تو صفحت
همچنین هدر رو بخای استفاده کنی نباید هیچ خروجی داشته باشی تو صفحه


منظور از خروجی میتونه echo باشه یا حتی یک فضای خالی قبل از تگ php
مثلا یه اینتر بزنی بعد تگ php رو باز کنی یعنی تو سطر اول کدت خالی باشه و تو سطر دوم تگ php باز بشه
اون سطر خالی میشه یک خروجی که کار رو خراب میکنه

همچنین چک کن تو صفحاتت بعد از اینکه تگ php رو بستی هم فضای خالی نباشه
معمولا چیز یکه خراب میکنه اینا رو همین سطر ها و فضا های خالی قبل و بعد از تگ php هستن
اون مشکلم حل شد ولی مشکل دیگه اینه ک اصلا چیزی رو اینسرت نمیکنه داخل دیتابیس با اینکه همه چی درسته!

رضا قربانی
دوشنبه 22 مهر 1398, 17:57 عصر
اون مشکلم حل شد ولی مشکل دیگه اینه ک اصلا چیزی رو اینسرت نمیکنه داخل دیتابیس با اینکه همه چی درسته!
میتونید برای نوشتن نام جداول یا فیلد ها در دستورات sql از تک کدیشن یا ' ` استفاده کنید . در نوشتن دستورات از این کاراکتر های به خوبی استفاده کن ( " ' ` )