проверка синтаксиса

usascha

Новичок
проверка синтаксиса

Здравствуйте.
Есть код, который по пока неизвестной мне причине перестал работать. Пытаюсь разобраться, но пока выдает только пустую страницу, а при просмотре через броузер выдает только<head><body></body></head>.

Включил отображение ошибок:
ini_set("display_errors", "1");
error_reporting(E_ALL);

...не помогает.

Думаю, что ошибка где-то в синтаксисе. Как проверить, что синтаксис php-кода правильный или не правильный и вывести место ошибки?
 

usascha

Новичок
В perl'е есть возможность проверить файл запросом из строки: perl -c.
Можно ли что-то подобное попользовать для php-файла?
 

Cougar

Кошак
php -f file.php (-f можно опустить, афаик)

-~{}~ 07.10.05 16:01:

Вариант 2: затолкать display_errors и error_reporting в .htaccess:

php_value error_reporting "2047"
php_value display_errors "1"
 

amorfis

я стараюсь
usascha
Еще есть способ в редакторах проверять синтаксис. Например, в PHP Expert Ediror есть такая фишка: Сервис/Проверка синтаксиса
 

usascha

Новичок
Cougar, у меня эти команды не прошли: php_value недопустимая команда, а на вторую просто ругается, что не знает ее.


amorfis, я пользуюсь HS+ и в нем проверка ругается только на тег <font>. Все остальное как буд-то нормально. Да и сам уже несколько раз пересмотрел весь код.



Может я сам неправильно понимаю суть ошибки. Из-за чего вообще может выдаваться пустая страница, если файл содержит php и html-код? Я знаю, что это бывает из-за синтаксической ошибки в php-коде. А что еще?
 

baev

‹°°¬•
Команда форума
[off]
Из-за логической ошибки.
...в генетическом коде...[/off]

usascha, что значит "по пока неизвестной мне причине перестал работать"?

То есть: он работал, а потом перестал?
 

usascha

Новичок
baev,
именно так. Этот файл отвечает за добавление новых баннеров на счет и их изменение. Добавление происходит редко, но редактирование нескольких баннеров делалось пару месяцев назад. Как будто ничего в скрипте не менял, да и все остальные функции работают, но эта перестала.

Я уже даже переустановил частично весь скрипт, но пока безрезультатно. Думаю еще на одну деталь, но для ее определения и задал этот вопрос: как-то мне объясняли, что-то про "рассогласование переменных". Что это значит толком не понял, но тогда мне помогли и проблема решилась.
 

baev

‹°°¬•
Команда форума
пользуюсь HS+ и в нем проверка ругается только на тег <font>
HS+ -- это HomeSite+, да?
А как Вы в нём синтакс php проверяете?

Вам же уже написали, как синтаксис проверить:
php.exe file.php
на домашнем компе запустите, и всё.
 

usascha

Новичок
baev, php код я проверил просто: взял и закомментировал его и написал голые буквы. Все тоже самое.

Стал думать, что м.б. провайдер что-то перенастроил, написал ему письмо, а он говорит, что у него все работает.

В общем, стал искать на "своей стороне" ошибку и нашел, но тоже не сразу! Один из шаблонов запретных адресов в firewall'е совпал с частью именно этого адреса.

Специально ведь и не придумаешь такую гадость сделать! Причем сам firewall тоже никаких отчетов по этому адресу не давал. Изменил шаблон и все заработало.

И мне наука и другим информация к размышлению.
 
Сверху