Как да дебъгвам php в браузера?

azsym

New member
Понеже съм нов в пхп ако направя грешка (забравя 😉 в браузера не се зарежда страницата.
Как да видя някъде къде гърми кода?
🙂 Явно днес ми е ден за питанки.
 
Re: Как да дебъгвам php в браузера?

Error reporting ти е изключен от конфигурацията на пхп-то. Ако нямаш достъп до конфиг-а, можеш да извикаш от скрипта:
PHP:
error_reporting(E_ALL);
 
Re: Как да дебъгвам php в браузера?

Error reporting ти е изключен от конфигурацията на пхп-то. Ако нямаш достъп до конфиг-а, можеш да извикаш от скрипта:
PHP:
error_reporting(E_ALL);

извиках го и пак нищо.
слагам го най-отгоре:
PHP:
error_reporting(E_ALL);
$hotsname ='localhost'
и пропускам ;
не се зарежда и не дава грешка.
 
Re: Как да дебъгвам php в браузера?

Какво значи "не се зарежда страница" ? Страница със статичен HTML зарежда ли се ?
 
Re: Как да дебъгвам php в браузера?

Какво значи "не се зарежда страница" ? Страница със статичен HTML зарежда ли се ?

да
но когато в пхп има грешка, ми дава че пхп файла не е открит.
иначе пхп си бачка ако не греша.
 
Re: Как да дебъгвам php в браузера?

Error 404 "file not found", така ли ?

Remote server or file not found
Check that the address is spelled correctly, or try searching for the site.
в опера в ФФ бял екран.
 
Re: Как да дебъгвам php в браузера?

трябва да имаш и
PHP:
ini_set("display_errors" , 1);
трябва да видиш и дали след това скрипта ти не ги забранява за показване, можеш да видиш грешките и error log-a :

apache/logs
/var/log/apache
и тн.

това е за грубите синтактични грешки. логически грешки можеш да дебъгваш като печаташ данните :

PHP:
echo $a
print_r($masiv);
var_dump($danni);
 
Re: Как да дебъгвам php в браузера?

Ако php файла има синтактична грешка няма да стане с ini_set() и error_reporting() т.е. всякакви опити да се изкара инфо от него са безмислени защото няма да се изпълни нищо.

За този случай може през php.ini само да се покаже грешката в браузъра.

По-добре е разбира се да си я гледаш в лога грешката. Т.е. да имаш пуснат лог и да гледаш вътре.

Или пък може да го include()-неш във друг файл, който да пусне грешките. Т.е. да си направиш груб syntax checker 🙂
Код:
<?php
  ini_set("display_errors" , 1);  
  error_reporting(E_ALL);  
  include('badfile.php');
?>
Малко е тъпо, но се надявам полезно да илюстрира проблема 🙂
 
Re: Как да дебъгвам php в браузера?

Ако php файла има синтактична грешка няма да стане с ini_set() и error_reporting() т.е. всякакви опити да се изкара инфо от него са безмислени защото няма да се изпълни нищо.

За този случай може през php.ini само да се покаже грешката в браузъра.

По-добре е разбира се да си я гледаш в лога грешката. Т.е. да имаш пуснат лог и да гледаш вътре.

Или пък може да го include()-неш във друг файл, който да пусне грешките. Т.е. да си направиш груб syntax checker 🙂
Код:
<?php
  ini_set("display_errors" , 1);  
  error_reporting(E_ALL);  
  include('badfile.php');
?>
Малко е тъпо, но се надявам полезно да илюстрира проблема 🙂
Мерси, то така става като пишеш на нещо дето знаеш 2-3 финкции, ама нема начин.
Малко не ми е ясно горното, като го направя тоя файл и го кача на сървъра с име име1.пхп напр. и после ако имам грешка в моя файл, трабва да посна име1.пхп за да я видя ли?
И какво става ако работя с няколко файла, инклюдва всичките по-горе ли?
 
Re: Как да дебъгвам php в браузера?

Мерси, то така става като пишеш на нещо дето знаеш 2-3 финкции, ама нема начин.
Малко не ми е ясно горното, като го направя тоя файл и го кача на сървъра с име име1.пхп напр. и после ако имам грешка в моя файл, трабва да посна име1.пхп за да я видя ли?
И какво става ако работя с няколко файла, инклюдва всичките по-горе ли?
Този пример, който дадох може да го запишеш като файл, например check_syntax.php и вътре да смениш името на файла, който искаш да провериш. После изпълняваш
Код:
http://site.tld/path/check_syntax.php
и би трябвало да видиш грешката която генерира php.

Ако не си възпрепятстван е препоръчително да ползваш другите варианти. Това е проста заобикалка за единичен проблем.
 

Back
Горе