Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> błąd header, przekierowywanie strony za pomocą header
eremen
post 27.02.2012, 20:45:44
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 15.02.2012
Skąd: Głogów - Opole

Ostrzeżenie: (0%)
-----


Witam,

chciałbym za pomocą header wczytać stronę

  1. if (isset($_POST['haslo']) && $_POST['glosuj']) {
  2.  
  3. if (in_array($_POST['haslo'], $kody)){
  4.  
  5. //ZAPISYWANIE WYNIKOW DO PLIKOW
  6. $filename=$_POST['auto'].'.txt';
  7. $votes = 1;
  8.  
  9. if(file_exists($filename)){
  10. $votes = file_get_contents($filename);
  11. $votes++;
  12. }
  13.  
  14. file_put_contents($filename, $votes);
  15.  
  16. $message = "dziękujemy za oddanie głosu";
  17.  
  18. //USUWANIE WPISANEGO HASŁA Z PLIKU I ZASTAPIENIE GO INNYM
  19.  
  20. srand((double)microtime()*1000000);
  21. $kod2=md5(uniqid(rand()));
  22. $nowehaslo = substr($kod2,0,5);
  23.  
  24. $kody; // tablica haseł pobrana z pliku z hasłami
  25.  
  26. $kody[array_search($_POST['haslo'], $kody)] = $nowehaslo;
  27.  
  28. file_put_contents("kody.txt", serialize($kody));
  29.  
  30. header('Location: [url="http://adresi.php&#39%3b%29;"]http://adres');[/url] <<----- W TYM MIEJSCU , czyli po zapisaniu wyniku głosowania do pliku
  31. }
  32. else {
  33. $message = "wpisałeś niepoprawne hasło";
  34. }
  35. }


Jednak pojawia się błąd:
Warning: Cannot modify header information - headers already sent by (outpu (w danej linii)

może to jest związane z tym że header ma być na samym początku (tak czytałem). Hmm...

Ten post edytował eremen 27.02.2012, 20:48:01
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
crocodillo
post 27.02.2012, 20:53:05
Post #2





Grupa: Zarejestrowani
Postów: 215
Pomógł: 44
Dołączył: 31.07.2011
Skąd: wrocław

Ostrzeżenie: (0%)
-----


Cytat(eremen @ 27.02.2012, 20:45:44 ) *
może to jest związane z tym że header ma być na samym początku (tak czytałem). Hmm...


Nie musi być na samym początku, ale musi być wywołany przed wysłaniem kodu html do przeglądarki. ob_start() / ob_end_flush() mogą pomóc.
Go to the top of the page
+Quote Post
by_ikar
post 27.02.2012, 20:53:13
Post #3





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

Ostrzeżenie: (0%)
-----


Ty tak na serio? Jakąś godzinę temu ten temat został zamknięty: http://forum.php.pl/index.php?showtopic=194289 ludzie, czemu nie potraficie skopiować komunikatu błędu i wrzucić go w google? Przecież to 5 sekund roboty.. 19 milionów wyników o podanym haśle: http://lmgtfy.com/?q=Warning%3A+Cannot+mod...already+sent+by czy to jest aż tak trudne? Wyszukiwarka twoim przyjacielem..
Go to the top of the page
+Quote Post
eremen
post 27.02.2012, 20:59:48
Post #4





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 15.02.2012
Skąd: Głogów - Opole

Ostrzeżenie: (0%)
-----


Cytat(crocodillo @ 27.02.2012, 20:53:05 ) *
Nie musi być na samym początku, ale musi być wywołany przed wysłaniem kodu html do przeglądarki. ob_start() / ob_end_flush() mogą pomóc.


Crocodillo, a jeśli mam ten kod w pliku, a ten plik dopiero wczytuje przez stronę na której mam kod html? Poza tym header mam w warunku bo chciałem żeby przekierowywało dopiero gdy ktoś odda głos :]

Cytat(by_ikar @ 27.02.2012, 20:53:13 ) *
Ty tak na serio? Jakąś godzinę temu ten temat został zamknięty: http://forum.php.pl/index.php?showtopic=194289 ludzie, czemu nie potraficie skopiować komunikatu błędu i wrzucić go w google? Przecież to 5 sekund roboty.. 19 milionów wyników o podanym haśle: http://lmgtfy.com/?q=Warning%3A+Cannot+mod...already+sent+by czy to jest aż tak trudne? Wyszukiwarka twoim przyjacielem..


niestety serio, dla kogoś to jest banalne i może mi pomóc w 5 minut... a jak sam będę szukał zajmie mi to dużo więcej ;] i było by to ok, bo wtedy się człowiek więcej uczy jak sam musi poszukać ale muszę mieć to na jutro
Go to the top of the page
+Quote Post
xxdrago
post 27.02.2012, 21:08:01
Post #5





Grupa: Zarejestrowani
Postów: 654
Pomógł: 42
Dołączył: 27.07.2010
Skąd: Jaworzno

Ostrzeżenie: (0%)
-----


Tak jak kolega wyżej:
ob_start() / ob_end_flush()
dodaj, oraz jeżeli korzystasz z kodowania UTF-8 to zmień na UTF-8 (bez bom)..


--------------------
GG: 10972302 :)
Go to the top of the page
+Quote Post
eremen
post 27.02.2012, 21:17:12
Post #6





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 15.02.2012
Skąd: Głogów - Opole

Ostrzeżenie: (0%)
-----


tak mam utf-8 bez BOM.
Kurcze, ale jeśli mam ten header w pliku który jest includowany do innego pliku to będzie działać? Ob start() zaraz za header, a ob end()?
Go to the top of the page
+Quote Post
Spawnm
post 27.02.2012, 21:18:41
Post #7





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Było setki razy, zamykam.
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:27