Cannot modify header information setcookie() hívásra
Üdv!
Warning: Cannot modify header information - headers already sent by (output started at....
Olvasgattem gugliban sok minden erről a hibáról....
1. php.ini output_buffering = off (ekkor jött elő)
2. nem header, semmi oldalátirányítás nincs, hanem setcookie van!
Van az index oldalam, ami beinclude-ol($ezt=asd) egy txt-t (/cikkek/asd.txt) és kiírja a tartalmát.
Hogy jön ide a setcookie?
Az index php számolja a nézettségét a fájlnak úgy, hogy megnézi sessioncookie-ban benne van-e a fájl azonosítója. ha benne van, nem csinál semmit csak kiírja a cikket az eddigi nézettséggel, ha nincs benne, akkor megnöveli a nézettséget és kiírja a cikket az új nézettséggel (és természetesen hozzáadja magát a sessioncookie-hoz). Ez a módszer működött amíg nem volt off-on az output_buffering. most viszont nem megy és annyiszor növeli a nézettséget ahányszor a frissítés gombot megnyomom.
A kód előtt és után is van HTML kód. Olvastam néhány dolgot erről az ob_start-ról de nem tudom jól használom-e. ob_start()-ot raktam a setcookie elé és az index.php legvégére ob_end_flush()-t, de nem jó. Ezeket kell amúgy paraméterezni? Én nem paramétereztem.
Lehet azt fogom csinálni, hogy megpróbálok minden HTML elemet a a setcookie-s PHP után rakni, de azért érdekelne egy szakszerűbb megoldás!
Előre is köszönöm!
ui.: rákerestem itt is weblaboron, de mindenhol header-rel foglalkoztak az emberek ezé mert új témát nyitni, nameg bátor is vagyok! KÖSZÖNÖM!
■ Warning: Cannot modify header information - headers already sent by (output started at....
Olvasgattem gugliban sok minden erről a hibáról....
1. php.ini output_buffering = off (ekkor jött elő)
2. nem header, semmi oldalátirányítás nincs, hanem setcookie van!
Van az index oldalam, ami beinclude-ol($ezt=asd) egy txt-t (/cikkek/asd.txt) és kiírja a tartalmát.
Hogy jön ide a setcookie?
Az index php számolja a nézettségét a fájlnak úgy, hogy megnézi sessioncookie-ban benne van-e a fájl azonosítója. ha benne van, nem csinál semmit csak kiírja a cikket az eddigi nézettséggel, ha nincs benne, akkor megnöveli a nézettséget és kiírja a cikket az új nézettséggel (és természetesen hozzáadja magát a sessioncookie-hoz). Ez a módszer működött amíg nem volt off-on az output_buffering. most viszont nem megy és annyiszor növeli a nézettséget ahányszor a frissítés gombot megnyomom.
A kód előtt és után is van HTML kód. Olvastam néhány dolgot erről az ob_start-ról de nem tudom jól használom-e. ob_start()-ot raktam a setcookie elé és az index.php legvégére ob_end_flush()-t, de nem jó. Ezeket kell amúgy paraméterezni? Én nem paramétereztem.
Lehet azt fogom csinálni, hogy megpróbálok minden HTML elemet a a setcookie-s PHP után rakni, de azért érdekelne egy szakszerűbb megoldás!
Előre is köszönöm!
ui.: rákerestem itt is weblaboron, de mindenhol header-rel foglalkoztak az emberek ezé mert új témát nyitni, nameg bátor is vagyok! KÖSZÖNÖM!
setcookie() vagy header() egykutya
nem nem és nem
köszönöm a segítséget!
szöveg sem lehet
igen igen és igen
Asszem most már értem miről van szó, összefoglalva: Ha fejlécbe író parancsot használok, előtte nem állhat HTML, szóköz, bármi szöveg. Ha mégis, akkor ob_start kell elé és az utolsó setcookie/header után ob_end_flush. Igazam van?
Nagyon nagyon köszönöm a segítséget!
kimenet, és nem körbevenni szvsz
csak a pontosság kedvéért.
Köszöntem!