Как отладить сценарии PHP в стороне сервера? В ситуации клиентская страница не показывает ответ

Я в настоящее время тестирую сценарий на своем хосте. Этот сценарий должен принять PayPal данные IPN, сделать несколько вещей (т.е. верификация данных), отправляет необходимые данные в определенный адрес электронной почты, и т.д.

Я использую инструмент тестирования на сайте PayPal для регистрации данных тестирования на мой сценарий. Мой сценарий не работает: должен быть выпущенный код, но я не вижу ошибки. Инструмент тестирования в PayPal просто делает сообщение и, кажется, не принимает ответа. Я хочу видеть то, что произошло в моем сценарии так, чтобы я мог зафиксировать его. Как я могу получить сообщения об ошибках мои выводы сценария?

Какие-либо идеи?

9
задан Annika Backstrom 10 August 2010 в 12:38
поделиться

4 ответа

Лучшим подходом было бы записывать ошибки в файл, а не на «экран». Если вы сделаете изменение на сервере, вероятно, это затронет другие сайты на сервере.

  • log_errors = On
  • display_errors = Off
  • error_log = /tmp/php.log (или лучший путь по вашему выбору; файл, вероятно, должен быть доступен для записи Apache / веб-сервером).

Если все вышеперечисленное не выполнено, установите xdebug и попробуйте отладить код - вы можете пошагово просматривать переменные по своему желанию - возможно, это даст вам лучшее представление.

В противном случае прибегните к var_dump () и друзьям.

2
ответ дан 4 December 2019 в 22:26
поделиться

Не уверен, что вы это уже тестировали (поместите в самом начале вашего PHP-скрипта):

error_reporting(-1);
ini_set('display_errors', 'On');

если он не отображается, попробуйте с помощью .htaccess (если на Apache):

php_flag display_errors on
php_value error_reporting -1

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

Конечно, это только для целей отладки, и вам следует выключите это во время производства.

5
ответ дан 4 December 2019 в 22:26
поделиться

использовать файлы журнала, а затем читать их.

Обычно в начале скрипта откройте файл, затем в различных точках кода выгрузите некоторые переменные в этот файл, затем вы можете просмотреть этот файл и проверить результат, и таким образом вы сможете увидеть, что не так с вашим скриптом.

0
ответ дан 4 December 2019 в 22:26
поделиться

В подобных случаях вы должны видеть, что печатает массив $_POST в консоли. Попробуйте использовать следующий код в самом начале вашей страницы, после инициализации со всеми необходимыми конфигурациями:-

<?php
// include all required configurations
// if needed, include the header file also

echo '<pre>';
print_r($_POST); // for viewing it as an array
var_dump($_POST); // for viewing all info of the array
echo '</pre>';
die();

// other HTML or PHP Logic follows
?>

Если это не сработает, тогда вам нужно будет поставить несколько точек останова, поместив несколько утверждений "exit" после некоторого кода время от времени, и медленно выполнить как можно больше кода пошагово.

Надеюсь, это поможет.

1
ответ дан 4 December 2019 в 22:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: