Diskuze: Stejné nastavení localhost jako webhosting

PHP PHP Stejné nastavení localhost jako webhosting American English version English version

Aktivity (1)
Avatar
Roman Duchoň:20. července 11:42

Ahoj,
dostal jsem se k chybě

Warning: Cannot modify header information - headers already sent by (output started at /data/web/vir­tuals/.../index­.php:14) in /data/web/vir­tuals/160052/vir­tual/.../regis­tration.php on line 32

Co tak hledám, tuším, co jí může způsobovat a chci na ní zapracovat.
Nicméně na localhostu mi to chybu nehlásí.

Zkusil jsem: Různé zásahy do kódu. Úprava php.ini (používám XAMMP). K webhostingovému konfigurátoru se nedostanu (WEDOS).
Nějak útržky z localhost php.ini, které by se mohly týkat nastavení:

; error_reporting
; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
; Development Value: E_ALL
; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT

; display_errors
; Default Value: On
; Development Value: On
; Production Value: Off

display_errors=On

Chci docílit: Než začnu samotnou chybu řešit, chtěl bych mít konfiguraci stejnou.
Předpokládám, že je lepší aktivovat chybu na localhostu, než deaktivovat na webhostingu.
Tedy bych rád chybu opravil a hned zkouknul (ne pokaždé uploadovat na FTP a nejistě čekat) a zároveň se chybě vyhnul do budoucna.

Děkuji za pomoc. :)

Editováno 20. července 11:44
Odpovědět 20. července 11:42
RD
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Roman Duchoň
Daniel Vítek:21. července 13:52

Znamená to, že někde v kódu spouštíš funkci header poté, co vypíšeš nějaký string (případně whitespace před <?php a tak podobně).

Co se týká vypisování errorů, zkus buď v php.ini

display_errors=On               ; zapne zobrazování errorů
error_reporting=E_ALL           ; nastaví, aby se vypisovaly všechny chyby

nebo přímo v PHP projektu přes ini_set().

Editováno 21. července 13:54
Nahoru Odpovědět  +1 21. července 13:52
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Odpovídá na Daniel Vítek
Roman Duchoň:23. července 15:30

Chybu jsem vykoumal...
Ale to nastavení...

error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT

Tohle mám nastavené a stejně se to dělo.

Nahoru Odpovědět 23. července 15:30
RD
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:24. července 7:51
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
?>
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 24. července 7:51
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Roman Duchoň
Daniel Vítek:24. července 14:53

Pak je možnost, že toto nastavení někde v kódu přepisuješ. Zkus si kód projet, případně si to nastav rovnou v PHPčku (jak nade mnou psal Peter Mlich).

Nahoru Odpovědět  +1 24. července 14:53
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Roman Duchoň:24. července 15:30

Zatím uzavírám, ač ještě nemám otestováno.
Rozhodl jsem se totiž vyhýbat příkazům echo před header.
Až to zas nastane, je možné, že sem zabloudím. A snad ten PHP skript pomůže.
(nic nepřepisuju)

Díky! :)

Editováno 24. července 15:31
Nahoru Odpovědět 24. července 15:30
RD
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.