PDA

View Full Version : warning در هنگام استفاده از session ها



هم دانشگاهی
شنبه 13 خرداد 1391, 11:13 صبح
سلام

من وقتی از session ها استفاده میکنم از <?php session_start(); ?>
که خط اول نوشتم warning میگیره

این پیغام رو میده :


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\xampp\xampp\htdocs\pdf\userdata.php:1) in D:\xampp\xampp\htdocs\pdf\userdata.php on line 1

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\xampp\xampp\htdocs\pdf\userdata.php:1) in D:\xampp\xampp\htdocs\pdf\userdata.php on line 1

لطفا راهنمایی کنین !

colors
شنبه 13 خرداد 1391, 11:31 صبح
درود

سشن رو باید قبل از شروع تگ <html> بنویسید.

کد بالارو اول کودهاتون قرار بدین

هم دانشگاهی
شنبه 13 خرداد 1391, 12:12 عصر
درود

سشن رو باید قبل از شروع تگ <html> بنویسید.

کد بالارو اول کودهاتون قرار بدین

همین کار رو کردم !

تابع <?php session_start(); ?> قبل از تگ html نوشتم

H:Shojaei
شنبه 13 خرداد 1391, 12:13 عصر
سشن رو باید قبل از شروع تگ <html> بنویسید.

با سلام
دوست عزيز فرقي نداره كه session-start() كجا تعريف بشه مهم اينه كه قبلش هيچ سشني تعريف نكرده باشيم البته بهتره بالاي كدها تعريف بشه ولي هيچ بايدي در كار نيست.(تا جايي كه من ميدونم):لبخند:

هم دانشگاهی
شنبه 13 خرداد 1391, 14:06 عصر
نه آخه من هیچ سشنی رو هم قبلش تعریف نکردم !

بالا کدم که هیچ چیزی نیست سشن رو استارت کردم !

به نظزتون مشکل کجاست ؟!

MMSHFE
شنبه 13 خرداد 1391, 15:05 عصر
خدایا قراره چند بار این پیغام خطا مورد سؤال قرار بگیره؟ شما دوستان که تجربه قبلی دارین چرا دقت نمیکنید تا ایشون رو به درستی راهنمایی کنید؟
فایلتون رو با کدگذاری UTF-8 without BOM ذخیره کنید.
اگه مشکل حل نشد، این کد رو در ابتدای فایلتون بگذارین:

<?php ob_start(); ?>
و این رو هم در انتهای فایل:

<?php ob_end_flush(); ?>
لطفاً قبل از پرسش هم یک جستجوی ساده انجام بدین. به جرأت میتونم بگم تعداد دفعاتی که این سؤال مطرح شده از تعداد روزهای عضویت من توی این سایت بیشتره!!!

Mohammad S
چهارشنبه 31 خرداد 1391, 20:55 عصر
با سلام
من هم این مشکلو دارم اما نه روی سیستم خودم بلکه روی هاست پلسک. برای تبدیل هم از نرم افزار UEStudio'11 استفاده کردم (آیا نرم افزار دیگه ای هم این امکان را داره؟).


فایلتون رو با کدگذاری UTF-8 without BOM ذخیره کنید.


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


اگه مشکل حل نشد، این کد رو در ابتدای فایلتون بگذارین:

<?php ob_start(); ?>
و این رو هم در انتهای فایل:

<?php ob_end_flush(); ?>


به نظرتون ممکنه مشکل از تنظیمات سرور باشه؟ چون من فقط یک کد ساده نوشتم و با تابع session_start() مشکل دارم:


<?php
//session_save_path("..//httpdocs/");
//ob_start();
session_start();
ob_start();
echo "salam4";
ob_end_flush();
?>

Mohammad S
چهارشنبه 31 خرداد 1391, 23:01 عصر
خروجی برنامه شده این:


Warning: session_start() [function.session-start]: open(C:\Windows\Temp\sess_ff5f054d72057f3fb8cd81b9 a82e78cd, O_RDWR) failed: Permission denied (13) in C:\Inetpub\vhosts\soury.in\httpdocs\index.php on line 4

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Inetpub\vhosts\soury.in\httpdocs\index.php:4) in C:\Inetpub\vhosts\soury.in\httpdocs\index.php on line 4
salam4
Warning: Unknown: open(C:\Windows\Temp\sess_ff5f054d72057f3fb8cd81b9 a82e78cd, O_RDWR) failed: Permission denied (13) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (C:\Windows\Temp) in Unknown on line 0

Mohammad S
چهارشنبه 31 خرداد 1391, 23:36 عصر
مشکلم حل شد:
اول یک پوشه ساختم مثلاً به نام Sess و تمامی پرمیشن ها هم بهش دادم (شامل read, write, ...) سپس با دستور زیر، گفتم سشن در اون پوشه ایجاد بشه:

session_save_path("..//httpdocs/Sess/");
البته فایل را هم با فرمت UTF-8 without BOM در نرم افزار Notepad++ رونویسی کردم و به هاست منتقل کردم.
ممنون از همه دوستان