Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Cannot modify header information...
proton
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


  1. Warning: Cannot modify header information - headers already sent in /srv/www/vhosts/netfrag.netarteria.eu/httpdocs/maincore.php on line 248


Taki otóż mam błąd jak dodam np. news, artykuł.

Kod z maincore.php:

  1. <?php
  2. // Redirect browser using the header function
  3. function redirect($location, $type="header") {
  4. if ($type == "header") {
  5. header("Location: ".$location);
  6. } else {
  7. echo "<script type='text/javascript'>document.location.href='".$location."'</script>n";
  8. }
  9. }
  10. ?>


Linia 248 to ta: header("Location: ".$location);

Co może być nie tak?

Linijka która zapewne powoduje błąd w pliku od dodawania newsów to:

  1. <?php
  2. if (!checkrights("N") || !defined("iAUTH") || $aid != iAUTH) fallback("../index.php");
  3. ?>


Zaś zawartość index.php to:

  1. <?php
  2. if ($_COOKIE['zmienna'] == 'stary') {
  3. include "news_stary.php";
  4. } else {
  5. include "news_nowy.php";
  6. }
  7. ?>


Próbowałem nadpisywać pliki oryginalnymi (bo to cms zmodyfikowany), dodawać ob_start(); i ob_end_flush(); ale nie pomogło.

Ten post edytował proton 9.07.2007, 12:07:32
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
pawel81
post
Post #2





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


Nagłówek został już wysłany.
Funkcji header nie możesz poprzedzić kodem html.
http://php.net.pl/manual/pl/function.header.php

poczytaj jeszcze o funkcjach ob_ http://php.net.pl/manual/pl/function.ob-start.php
Go to the top of the page
+Quote Post
proton
post
Post #3





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


Ale to nie jest poprzedzone html'em
Go to the top of the page
+Quote Post
pawel81
post
Post #4





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


a includowane pliki?
Go to the top of the page
+Quote Post
proton
post
Post #5





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


Nie możliwe aby to była winaincludowanych plików, bo nadgrałem oryginalne pliki wszystkie ktore są z tym związane i nadal nic.

Może to być wina konfiguracji serwera?

Sprawdzam dokładniej plik odpowiedzialny za wysyłanie newsa i tam mam linijke:

  1. <?php
  2. redirect(FUSION_SELF.$aidlink."&status=sn");
  3. ?>


Może to kogoś naprowadzi

redirect zamiast przekierowywać na FUSION_SELF.$aidlink."&status=sn przekierowywuje na FUSION_SELF.$aidlink."

Ten post edytował proton 9.07.2007, 12:42:05
Go to the top of the page
+Quote Post
strife
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Cytat(proton @ 9.07.2007, 13:33:04 ) *
Nie możliwe aby to była winaincludowanych plików, bo nadgrałem oryginalne pliki wszystkie ktore są z tym związane i nadal nic.

Może to być wina konfiguracji serwera?


Hmm .. w takim razie jedna myśl mi przychodzi do głowy. Edytor jakim zapisujesz pliki może dodawać na początku jakieś znaki od siebie ( BOM ).

http://forum.php.pl/index.php?showtopic=27476

Warto sprawdzić i zobaczyć innym edytorem.


--------------------
Go to the top of the page
+Quote Post
pawel81
post
Post #7





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


ja tez maiłem raz problem z edytorem kod w pliku był zapisany a strony nie wyświetliło zobacz w tym edytorze http://www.mpsoftware.dk/downloads.php

szukałem tej funkcji redirect w manualu i leksykonie ale nie znalazłem była owszem http_redirect http://php.net.pl/manual-lookup.php?patter...ect&lang=pl

Ten post edytował pawel81 9.07.2007, 12:53:52
Go to the top of the page
+Quote Post
proton
post
Post #8





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


Nie wiem czy dobrze sie wyrażam ale chyba zrozumiecie, otóż funkcja redirect jest opisana w pliku maincore.php:

  1. <?php
  2. function redirect($location, $type="header") {
  3. if ($type == "header") {
  4. header("Location: ".$location);
  5. } else {
  6. echo "<script type='text/javascript'>document.location.href='".$location."'</script>n";
  7. }
  8. }
  9. ?>
Go to the top of the page
+Quote Post
pawel81
post
Post #9





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


Zobacz na ta funkcje http://php.net.pl/manual/pl/function.headers-list.php

Sprawdź zawartość nagłówka

Dodaj przed
  1. <?php
  2. header("Location: ".$location);
  3. ?>
  1. <?php
  2. echo'jakiś tekst';
  3. ?>
i zobacz w którym miejscu strony wyświetli ten tekst najlepiej w źródle czy przed znacznikiem html

Ten post edytował pawel81 9.07.2007, 13:25:34
Go to the top of the page
+Quote Post
proton
post
Post #10





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


Normlanie tekst sie nie wyświetla, pojawił się dopiero jak wysłałem news i znajdował się nad błędem
Go to the top of the page
+Quote Post
pawel81
post
Post #11





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


zablokuj linie header znakiem # pod header daj exit; i zobacz teraz w źródło

  1. <?php
  2. #header("Location: ".$location);
  3.  
  4. echo 'text';
  5. ?>

albo nie dawaj tekstu

  1. <?php
  2. #header("Location: ".$location);
  3.  
  4. ?>


jeżeli źródło jest czyste to znaczy że nagłówek nie został wysłany wcześniej

Ten post edytował pawel81 9.07.2007, 14:25:38
Go to the top of the page
+Quote Post
proton
post
Post #12





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


Pomogło to w tym iz nie wywala już błedu, lecz teraz nie przekierowywuje adres.php?status=sn ale bez tego da się żyć bo tam był tylko tekst że news dodany a teraz ten tekst moge dodać nad header i wtedy będzie on widziany.

dzięki za pomoc
Go to the top of the page
+Quote Post
pawel81
post
Post #13





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


daj przed header @ i nie wywali błędu
Go to the top of the page
+Quote Post
proton
post
Post #14





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


ale ze znakiem # też już nie wywala błedu więc jest ok

jedyne co jest złe to to że nie przekierowywuje
Go to the top of the page
+Quote Post
pawel81
post
Post #15





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


  1. <?php
  2. #header("Location: ".$location);
  3.  
  4. ?>


jeżeli źródło strony jest czyste to znaczy że nagłówek nie został wysłany wcześniej

Ten post edytował pawel81 9.07.2007, 14:27:49
Go to the top of the page
+Quote Post
Cosi*
post
Post #16





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 9.07.2007
Skąd: Dąbrowa Górnicza

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


A może sprawdź, czy w includowanym pliku po zakończeniu kodu "?>" nie ma wstawionej nowej linii? Jeżeli tak, spróbuj usunąć.
Nie wiem czy pomoże, ale kto wie...? smile.gif


--------------------
http://cosi.com.pl
<? $kate or die ?>
Go to the top of the page
+Quote Post
pawel81
post
Post #17





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 28.04.2007

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


A przed <?php w aktualnym liku

Ten post edytował pawel81 9.07.2007, 14:43:52
Go to the top of the page
+Quote Post
Cosi*
post
Post #18





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 9.07.2007
Skąd: Dąbrowa Górnicza

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


Przed znakiem, po znaku... Chodzi o to, żeby poza obszarem <?php ?> nie było żadnych znaków nowego wiersza.


--------------------
http://cosi.com.pl
<? $kate or die ?>
Go to the top of the page
+Quote Post
proton
post
Post #19





Grupa: Zarejestrowani
Postów: 88
Pomógł: 4
Dołączył: 16.08.2006

Ostrzeżenie: (20%)
X----


Nie ma nic, wszystko ujęte jest pomiędzy <?php ?>
Go to the top of the page
+Quote Post
Cosi*
post
Post #20





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 9.07.2007
Skąd: Dąbrowa Górnicza

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


A jak oglądasz plik w edytorze i przesuniesz się na koniec dokumentu to po "?>" masz pustą linię?
Jeżeli nie, to nie mam pojęcia.....


--------------------
http://cosi.com.pl
<? $kate or die ?>
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 04:29