Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: ошибка session_start()
 
 автор: serenya1983   (26.10.2010 в 11:25)   письмо автору
 
 

Есть запрос к серверу (через Curl).
В файле на сервере к которому происходит обращение есть session_start() - и на этом месте сервер не отвечает, если убрать session_start() всё работает, сервер отвечает. Ошибки не показывает, просто виснит в момент session_start() (до код работает, после - нет)!
Что это можеть быть!?
Спасибо.

  Ответить  
 
 автор: elenaki   (26.10.2010 в 11:52)   письмо автору
 
   для: serenya1983   (26.10.2010 в 11:25)
 

session_start() должно быть в самой первой строке, ДО любого другого кода. может, там есть какой-то вывод или в коде ошибка... и вообще, для отладки есть специальная директива РНР, выводящая ошибки, чтоб не гадать на кофейной гуще.

  Ответить  
 
 автор: psychomc   (26.10.2010 в 12:03)   письмо автору
 
   для: serenya1983   (26.10.2010 в 11:25)
 

попробуйте в самый верх скрипта, в котором session_start(), прописать error_reporting(0);
ну и session_start() до echo обязательно

  Ответить  
 
 автор: serenya1983   (26.10.2010 в 12:23)   письмо автору
 
   для: psychomc   (26.10.2010 в 12:03)
 

прописывал error_reporting(0) и конечно же session_start сама первая, пробывал try catch всё равно дальше session_start() не проходит выполнение!!!

Раньше сайт работал на другом хостинге всё было нормально! После "переезда" в этом месте проблема! С самими сессиями проблем в остальных частых нет!

  Ответить  
 
 автор: Trianon   (26.10.2010 в 12:40)   письмо автору
 
   для: psychomc   (26.10.2010 в 12:03)
 

>попробуйте ... прописать error_reporting(0);

знаете что нужно делать за такие советы?
Ругаться не хочется - казнь себе придумайте сами.

  Ответить  
 
 автор: psychomc   (26.10.2010 в 12:58)   письмо автору
 
   для: Trianon   (26.10.2010 в 12:40)
 

я считаю что это оправдано в двух случаях:
1) когда заливаешь сайт на сервер
2) когда нужно подавить вывод в браузер чтобы определить с чем связана проблема неработоспособности (этот случай)

p.s вне всяких сомнений, разрабатывать нужно на error_reporting(E_ALL);
казнить себя не буду, я еще так мало пожил :)

  Ответить  
 
 автор: serenya1983   (26.10.2010 в 13:58)   письмо автору
 
   для: psychomc   (26.10.2010 в 12:58)
 

как разобраться с error_reporting(E_ALL) если ошибки не выдаются, а просто дальше не проходит!?

  Ответить  
 
 автор: elenaki   (26.10.2010 в 14:23)   письмо автору
 
   для: serenya1983   (26.10.2010 в 13:58)
 

что значит "" дальше не проходит"? вместо кода, который "дальше", попробуйте просто вывести что-то "ку-ку". может, ошибка именно в коде, который "дальше"

  Ответить  
 
 автор: Trianon   (26.10.2010 в 14:28)   письмо автору
 
   для: psychomc   (26.10.2010 в 12:58)
 

>я считаю что это оправдано в двух случаях:
>1) когда заливаешь сайт на сервер
Неоправданно.
Ошибки должны проявляться.
Простоне на экране клиента, а в лог-файле.
error_reporting(0) их будет душить накорню.


>2) когда нужно подавить вывод в браузер чтобы определить с чем связана проблема неработоспособности (этот случай)

неоправданно.
Следует убрать причину ошибки, а не её проявление.

>p.s вне всяких сомнений, разрабатывать нужно на error_reporting(E_ALL);
еще раз.
Работать должно тоже с включенной диагностикой.
Не все ошибки вскрываются в процессе разработки.


>казнить себя не буду,
можно ж не до смерти :)

> я еще так мало пожил :)
то есть как советы вредные давать, так достаточно пожили, а как ответить - так мало?

  Ответить  
 
 автор: psychomc   (26.10.2010 в 15:01)   письмо автору
 
   для: Trianon   (26.10.2010 в 14:28)
 

>неоправданно.
>Следует убрать причину ошибки, а не её проявление.

согласен. но мы здесь о разных вещах говорим. я предложил подавить вывод ошибок для того, чтобы проверить - session_start() не работает из-за вывода в браузер до её вызова, или из-за чего-то другого. я не призывал топикстартера поставить error_reporting(0) и забыть, а всего лишь протестить скрипт. почувствуйте разницу.

и кстати, совет совету рознь ;)

  Ответить  
 
 автор: Trianon   (26.10.2010 в 15:29)   письмо автору
 
   для: psychomc   (26.10.2010 в 15:01)
 

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

Вы сами себе противоречите. Проверить причину отказа session_start() из-за преждевременного вывода в браузер куда проще про включенном error_reporting()

>я не призывал

Вы не призывали, да только он-то так и сделает.
Не он, так другой, кто наткнется на это вот.

  Ответить  
 
 автор: psychomc   (26.10.2010 в 15:34)   письмо автору
 
   для: Trianon   (26.10.2010 в 15:29)
 

>Вы сами себе противоречите. Проверить причину отказа session_start() из-за преждевременного вывода в браузер куда проще про включенном error_reporting()

имеете ввиду в логах?

  Ответить  
 
 автор: Trianon   (26.10.2010 в 16:15)   письмо автору
 
   для: psychomc   (26.10.2010 в 15:34)
 

я имею в виду, что диагностика ...Cannot sent headers, Output started... будет сгенерирована и замечена.
Если включено. Если подавлено - не будет.
А где - без разницы.

  Ответить  
 
 автор: elenaki   (27.10.2010 в 12:06)   письмо автору
 
   для: Trianon   (26.10.2010 в 16:15)
 

может, у вас файл в кодировке UTF-8 сохранен с ΒΟΜ? там какие-то два лишних байта добавляются в начало файла и не дают исполнять session_start().

  Ответить  
 
 автор: Trianon   (27.10.2010 в 12:57)   письмо автору
 
   для: elenaki   (27.10.2010 в 12:06)
 

у тредстартера - скорее уж тогда 
и в utf8 это не два байта, а три.

  Ответить  
 
 автор: elenaki   (27.10.2010 в 14:01)   письмо автору
 
   для: elenaki   (27.10.2010 в 12:06)
 

хотела написать: BOM (случайно влез греческий шрифт, не посмотрела сразу...)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования