session_start().......!!

17 отговора 525 прегледа
#1

session_start().......!!


Warning: session_start(): open(/tmp\sess_66ead70d27ae96cf498a14592df980ec, O_RDWR) failed: No such file or directory (2) in x:\xxx\xxx\gg.php on line 2

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at x:\xxx\xxx\gg.php:1) in x:\xxx\xxx\gg.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at x:\xxx\xxx\gg.php:1) in x:\xxx\xxx\gg.php on line 2

Your session ID is 66ead70d27ae96cf498a14592df980ec


Warning: Unknown(): open(/tmp\sess_66ead70d27ae96cf498a14592df980ec, O_RDWR) failed: No such file or directory (2) 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 (/tmp) in Unknown on line 0


Ако някой може да ми каже какво означава тази грешка и за6то не мойе да се стартира сесията.
аз съм много на вие със php-to още и затова ми е тъп въпроса сигурно..... но ж никой от хелповете ми не е описана такъв вид грешка


а да а сцрипта е съжсем прост -само за стартиране на сесия и вземане на id-то и


<?php
session_start();
?>
<html>
<head>
<title> a session</title>
</head>
<body>
<?php
print "<p>Your session ID is ".session_id()."</p>\n\n";
?>
</body>
</html>


Отговор
в отговор на caveman #2

Re: session_start().......!!

явно нямаш директория тмп. Като начало може да я създадеш

Break The UnBreakable
Отговор
в отговор на nupaT #3

Re: session_start().......!!

тва явно е на windows и трябва да я създаде в c:\
или да си напише в php.ini някоя друга директория, която иска - стига да има такваз

Отговор
в отговор на phpGuru #4

Re: session_start().......!!

ми създавах му я ама не става. а тожа за php.ini ще видя .... то тва ини баси кво редактиране иска сега открих че и mail() не ми работи и то пише че в php.ini трябва да се оправя ама и то не стява.....

Отговор
в отговор на phpGuru #5

Re: session_start().......!!

хубаво напражих му директория но си я иска да е на C: не мога да му я сменя от php.ini-то ... както и ад е сега останаха само о6те два warninga...


Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\web\apache\htdocs\gg.php:1) in c:\web\apache\htdocs\gg.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\web\apache\htdocs\gg.php:1) in c:\web\apache\htdocs\gg.php on line 2

Your session ID is 2713726a8832c00c3d9ab86dc37aa78e




какво по дяволите означават те...?

Отговор
в отговор на caveman #6

Re: session_start().......!!

ами значи start_session() трябва да е първо, т.е. да нямаш изписване на нещо преди него дали ще е нов ред или празен стринг .....
(изписване не значи само echo или print, може да имаш html преди първото <?)

Отговор
в отговор на caveman #7

Re: session_start().......!!

В отговор на:

не мога да му я сменя от php.ini-то




?!?!?!?!?

-----------------------
гърбавия - ковчег ще го изправи

Редактирано от Bълk на

Отговор
в отговор на Bълk #8

Re: session_start().......!!

в отговор на

?!?!?!?!?!!?

ами в смиасл че и да сменям директорията в която да си запсва кукитата написана в php.ini която по defoult е /tmp ни6то не се променя то пак си я търси там .........

Отговор
в отговор на phpGuru #9

Re: session_start().......!!

ха чудеса :)
сега оба4е имам друг проблем с опресняването на хедъра

след тва
header("Location: main.php?PHPSESSID=" . session_id());

ми прасва warning.......

Warning: Cannot modify header information - headers already sent by (output started at c:\web\apache\htdocs\index(session).php:25) in c:\web\apache\htdocs\index(session).php on line 43


Отговор
в отговор на caveman #10

Re: session_start().......!!

пак същото ;-)

преди сякакъв вид хедъри не трябва да има никакъв output .... !!!

ако ще правиш обаче навсякъде предаване на сесията може би по-добре е така:
header('Location: main.php?' . session_name() . '=' . session_id());

обаче доста свободно може да разчиташ, че потребителя си е разрешил кукита, в наши дни мисля


PS
а по повод промените в php.ini като ги направиш, трябва да рестартираш сървера, освен ако php-то не ти работи като cgi

Отговор
в отговор на phpGuru #11

Re: session_start().......!!

Ами ако не с cookita то с какво....? След като не мога да разчитам че потребителите са си ги разрешили??

Отговор
в отговор на phpGuru #12

Re: session_start().......!!

Е рестартирам го все пак това е близко до главния мозък...

Но как да нямам output преди него като headera ми е в if които проверява заявка ... и от резултата зависи дали да смени Locationa или не.....

Отговор
в отговор на caveman #13

Re: session_start().......!!

ами за кукитата първо session_start() си се грижи за кукитата и т.н., т.е. линковете ако не ги правиш такива, кукитата ще си работят (докато браузера ги подържа, аз обикновено разчитам на това, ако не потребителя духа)

относно тва, че не може - може ;-) реорганизирай си кода

ако е чак толкова трудно, което е много рядък случай, може в началото на файла да напишеш ob_start() (преди него също не трябва да има никакъв аутпут) .....

Отговор
в отговор на caveman #14

Re: session_start().......!!

taka da vi kaja kak da si re6iteproblema :) vijdam 4e ne doumqvate :P
taka :) zna4i v php.ini ima slednoto ne6to
session.save_path = "C:\php\sessions\"
taka sym si go setnal az estestveno v c:\php\ trqbva da ima6 papka sessions :) ina4e pak nqma da raboti. tova e za tazi gre6ka :)

Отговор
в отговор на caveman #15

Re: session_start().......!!

otnostno sledva6tite gre6ki

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at x:\xxx\xxx\gg.php:1) in x:\xxx\xxx\gg.php on line 2

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at x:\xxx\xxx\gg.php:1) in x:\xxx\xxx\gg.php on line 2

sesiite trqbva da bydat startirani predi vsi4ko ostanalo predi headers v html toset ne trqbva da ima nikakv html predi php-to ili pak samoto php da e printiralo text na ili da re4em da ste ostavili nqkolko reda prazni :)

Отговор
в отговор на hedonism #16

Re: session_start().......!!

Ами да ти кажа точно там го сменям SAVE на php.ini ..... restart на сървара естествено папката я има.....И то пак си знае ... неговата.. иска да ги слага в \tmp и това е...

мерси все пак

Отговор
в отговор на phpGuru #17

Re: session_start().......!!

Така вече стана много 10х човече

Отговор
в отговор на caveman #18

Re: session_start().......!!

И аз по едно време се борих с този проблем, но под win не слуша. Накрая се предадох и му направих /tmp, но на диска с инсталираното PHP(при мен е D).

И други неща не чува под win. Така, че ти препоръчвам да се съгласяваш с него и да хвърляш усилия за нещо по-полезно.

И най-ярките личности си плащат тока.
Отговор