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

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Загрузка картинок.

Сообщения:  [1-10]    [11-20]  [21-21] 

 
 автор: Trianon   (25.10.2006 в 15:24)   письмо автору
 
   для: cheops   (25.10.2006 в 15:21)
 

Кто б спорил :)

   
 
 автор: cheops   (25.10.2006 в 15:21)   письмо автору
 
   для: Trianon   (25.10.2006 в 13:30)
 

Да вы правы, но лучше программировать без учёта этого факта. Если я вынужден использовать header() я стараюсь разместить в наиболее безопасном, по моему мнению месте, т.е. после всего кода, отсюда мой совет. Лучше, чтобы header() размещался после всего кода, так как его реализация может быть изменена, да и соблазн написать ещё что-то будет существенно меньше, так как в середине кода забыть про воткнутый header() проще, чем в конце.

Использование функции header() и тем более учёт в программе алгоритма их обработки - это нарушение инкапсуляции - PHP берёт на себя низкоуровневую работу с протоколом, а при помощи header() можно влиять на эту работу - в результате получается не очевидная среда, зависищая от прядка вызова функций. Что во всех методических работах называют одним из серьёзных промахов проектирования. Абстрактные уровни для того и разводят, чтобы они не влияли друг на друга и они могли бы быть заменены без ущерба друг для друга. Например, я вообще стараюсь не вызывать фукнции header(), так как это влечёт за собой целый ряд последствий: буферизация не на всех серверах включена, поэтому файл, использующий header() не может быть просто включён в другой файл, нужно помнить, что впереди него не должно быть вывода.

   
 
 автор: Trianon   (25.10.2006 в 13:30)   письмо автору
 
   для: cheops   (25.10.2006 в 12:20)
 

>Нет, но PHP является интерпретатором, который выполняет строки последовательно,
>встретив заголовок он его отправит,
Разве?
А по-моему, лишь запомнит для отправки. А отправлен он будет не раньше, чем придет требование отправить первый байт тела отклика.
Иначе я не представляю себе, как смогли бы работать headers_sent(), да и второй параметр (replace) самой функции header()

   
 
 автор: cheops   (25.10.2006 в 12:20)   письмо автору
 
   для: Trianon   (25.10.2006 в 09:51)
 

Нет, но PHP является интерпретатором, который выполняет строки последовательно, встретив заголовок он его отправит, а дальше зависит от растороности клиента, переключиться он на другую страницу разорвав это соединение или нет и будет сервер продолжать работу скрипта, работа которого прервана или нет. В любом случае таких скользких моментов лучше избегать, чтобы можно было однозначно локализовать проблему.

   
 
 автор: Trianon   (25.10.2006 в 09:51)   письмо автору
 
   для: cheops   (23.10.2006 в 14:16)
 

Вот этот момент мне непонятен. Разве функция header прерывает выполнение php-скрипта?

   
 
 автор: qwelp   (25.10.2006 в 03:55)   письмо автору
 
   для: cheops   (25.10.2006 в 02:57)
 

может есть похожий рабочий скрипт?

   
 
 автор: cheops   (25.10.2006 в 02:57)   письмо автору
 
   для: qwelp   (25.10.2006 в 02:29)
 

Закрывающую скобку однозначно поставить следует, slonik, всё правильно говорит.

   
 
 автор: qwelp   (25.10.2006 в 02:29)   письмо автору
 
   для: cheops   (25.10.2006 в 00:25)
 

Может надо вставить закрывающую скобку ? или в запросе что то

   
 
 автор: cheops   (25.10.2006 в 00:25)   письмо автору
 
   для: qwelp   (24.10.2006 в 22:37)
 

У вас скорее всего отключен вывод ошибок в окно браузера - посмотрите их в логе в системе администрирования.

   
 
 автор: slonik   (24.10.2006 в 23:45)   письмо автору
 
   для: qwelp   (24.10.2006 в 22:37)
 

Возможно я ослеп и не вижу, а может как всегда туплю, но я не вижу, чтобы if закрывался..также не вижу ещё две штуки, но про них промолчу, т.к. сомневаюсь и не хочу нести бред.

   

Сообщения:  [1-10]    [11-20]  [21-21] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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