Jak zapnout něco lepšího než je výpis chyb v PHP

Jurko

Jak zapnout něco lepšího než je výpis chyb v PHP
« kdy: 12. 01. 2018, 16:25:03 »
Zdravím, jak zapnout v php výpisování všech chyb, upozornění, varování a já nevím čeho všeho na obrazovku. Třeba nějaký developerský režim nebo tak něco?
V php.ini jsem změnil jediný řádek
z
;display_errors = Off
na
display_errors = On
ale asi to nestačí. Dostávám bílou stránku v prohlížeči a nemůžu na to přijít.


Danny


Jenda

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #2 kdy: 12. 01. 2018, 16:54:26 »
Možná to někdo další overridnul přes ini_set. Chyby to píše na stderr (což bych doporučoval, protože už se takhle jednou podařilo jednomu velkému e-shopu vypsat chybu, ve které bylo vidět heslo k databázi) a to se loguje do error logu tvého webserveru.

Jurko

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #3 kdy: 12. 01. 2018, 17:08:13 »
http://php.net/manual/en/debugger.php
Používám to již dlouho - neřeší to můj problém.

Kit

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #4 kdy: 12. 01. 2018, 17:09:11 »
Kód: [Vybrat]
error_reporting(E_ALL);


Jurko

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #5 kdy: 12. 01. 2018, 17:10:22 »
Možná to někdo další overridnul přes ini_set. Chyby to píše na stderr (což bych doporučoval, protože už se takhle jednou podařilo jednomu velkému e-shopu vypsat chybu, ve které bylo vidět heslo k databázi) a to se loguje do error logu tvého webserveru.
Jenže já to potřebuji vypsat všechno na obrazovku, je to zatím na localhost-u, tak je mi to putna. Díky

Jurko

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #6 kdy: 12. 01. 2018, 17:14:46 »
Kód: [Vybrat]
error_reporting(E_ALL);
no a co s tím? nastavit v souboru php.ini, nebo to dát do php souboru?

Kit

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #7 kdy: 12. 01. 2018, 17:16:10 »
Pokud máš bílou obrazovku, tak máš nejspíš chybu v syntaxi. Spuštěním přes CLI ji snadno najdeš.

Také to může být chyba HTTP, tu najdeš v logu.

Tyhle záležitosti testuji tak, že si PHP spustím jako server. Vypíše i chybějící obrázky, CSS i JS.

dw

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #8 kdy: 12. 01. 2018, 18:08:40 »
Kód: [Vybrat]
error_reporting(E_ALL);
no a co s tím? nastavit v souboru php.ini, nebo to dát do php souboru?
Ak nevies kam s tym, tak sa na to radsej vykasli :D

Vazne: error_reporting() je fce php, takze ju das do php kodu, ta ale budefungovat ak mas povolene menit ini nastavenia. Alebo v php.ini nastavis error_reporting = E_ALL. Samozrejme sa pozri ci sa ti to neprepisuje v .htaccess. Pripadne skontroluj ci v kode nemas nastaveny error handler ktory to odchyti ale nezobrazi.

Jurko

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #9 kdy: 12. 01. 2018, 18:27:40 »
Pokud máš bílou obrazovku, tak máš nejspíš chybu v syntaxi. Spuštěním přes CLI ji snadno najdeš.

Také to může být chyba HTTP, tu najdeš v logu.

Tyhle záležitosti testuji tak, že si PHP spustím jako server. Vypíše i chybějící obrázky, CSS i JS.
A je to moc složitý to tak zprovoznit ?

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #10 kdy: 12. 01. 2018, 18:32:36 »
Pokud někdo loguje na výstup klienta není normální.
Naposledy jsem si takhle načetl celou infrastrukturu docela velké a známé firmy (kde běží který Oracle atd) - nešlo o PHP podotýkám. Neumím si představit větší amatérismus.
Logujte prostě do souboru...

V konfiguraci serveru to může být zakázané, jinak je globální nastavení a pak per user. Normální lidi to budou mít zablokované a pravděpodobně budou logovat do domovského adresáře uživatele.

jinak to jsou tyto proměnné
log_errors = on/off
error_log = /cesta.log
display_errors = on/off
error_reporting = E_ALL

Zend měl debugger společně se Zend Studiem.
« Poslední změna: 12. 01. 2018, 18:38:29 od Jan Forman »
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci

Jenda

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #11 kdy: 12. 01. 2018, 19:05:50 »
A je to moc složitý to tak zprovoznit ?

php -S localhost:8099

Pavouk106

  • *****
  • 2 395
    • Zobrazit profil
    • Můj blog
    • E-mail
Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #12 kdy: 12. 01. 2018, 19:08:26 »
E_ALL je skvělá věc. Mám to nastavený globálně a jakpak se mi hned podařilo omezit všechny notice a warning atd. Teď píšu pěknej čistej kód (z pohledu errorů, ne z pohledu programátora ;D ). Nenechte se mýlit, v PHP si píšu skripty jen tak pro sebe...

Ivan Nový

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #13 kdy: 12. 01. 2018, 20:09:08 »
Kint

Kit

Re:Jak zapnout něco lepšího než je výpis chyb v PHP
« Odpověď #14 kdy: 12. 01. 2018, 21:53:04 »
E_ALL je skvělá věc. Mám to nastavený globálně a jakpak se mi hned podařilo omezit všechny notice a warning atd. Teď píšu pěknej čistej kód (z pohledu errorů, ne z pohledu programátora ;D ). Nenechte se mýlit, v PHP si píšu skripty jen tak pro sebe...

V práci se kdekdo divil, že jsem si zapnul vypisování noticek, které se běžně ignorují. Ještě protaženější ksichty jsem viděl, když zmizely fatální chyby, kterých dříve bylo v logu jak naseto a nikdo si s nimi nevěděl rady. Stačilo sledovat noticky...