Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> czego uzyc zamiast HEADER(skok do strony), jak skoczyc do strony bez header()
Fin120
post 23.01.2006, 13:20:57
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 16.03.2004
Skąd: Gorzow

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


witam.
potrzebuje pomocy.
ponizej zamiszczam skrypt php umieszczony w pliku WML (WAPowski HTML).
jak widac, na poczatku jest wywolywana funkcja header do przeslania ifnormacji na temat rodzaju dokumentu WML. te pierwsze kilka linijek kodu jest niezbedne aby moc umieszczac kod php w w tego rodzaju plikach (jesli tego nie zrobie, komroka wyswietli mi komunikat ze nieprawidlowy format pliku itp).. problem polega na tym ze funkcja header jest wywolywana juz na samym poczatku, przez co pozniejesze jej wywolanie powoduje wyswietlenie komunikatu ze headers already sent ....

moje pytanie brzmi: czy mozna uzyc innej funkcji zamiast header do "skoku" do innego pliku? obecnie mam to zrobone na zwyklych odnosnikach, ale potrzebuje zrobic ten przeskok do poprzedniej strony automatycznie. bede wdzieczny za kazda informacje jak mozna by to ewentualnie zrobic.
oto skrypt:
  1. //te poczatkowe 4 linijki musza pozostac nie zmienione
  2. <?php
  3. header("Content-type: text/vnd.wap.wml");
  4. echo "<?xml version=\"1.0\"?>";
  5. echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\""
  6.  . \"http://www.wapforum.org/DTD/wml_1.1.xml\">"; 
  7. ?>
  8. <wml>
  9. <card id="prezent" title="Wynik">
  10. <p>
  11. <?php
  12. $teraz_czesc=$_POST["teraz_czesc"];
  13. $kategoria=$_POST["kategoria"];
  14. @mysql_connect("localhost","fin120","fin120") or die("Nie moge polaczyc sie z serwerem MySQL");
  15. @mysql_select_db("enginer") or die("Nie moge wybrac bazy danych ENGINER");
  16. $zapytanie2="SELECT opis,p_t,le_pr,info,nr_katalog,dostep FROM
  17. czesc,grupa WHERE czesc.model_idmodel=$teraz_czesc AND
  18. grupa.idgrupa=$kategoria AND
  19. grupa.idgrupa=czesc.grupa_idgrupa";
  20. $result=mysql_query($zapytanie2);
  21. if (mysql_num_rows($result) == 0):
  22. //tutaj zastapilem funkcje header zwyklymi
  23.  //odnosnikami, jednak potrzebuje sposobu na automatyczny skok
  24.  //do poprzedniej strony.
  25.  
  26. //header("location: http://localhost/search6.php");
  27.  //exit;
  28. print "Nie znaleziono zadnego produktu dla tego modelu.";
  29. print "</br><a href=\"http://localhost/mar.wml\"><b>Cofnij</b></a>";
  30. else:
  31. while (list($opis,$p_t,$le_pr,$info,$nr_katalog,$dostep)=mysql_fetch_row($result)):
  32. print "
  33. <b>Opis: </b>$opis<br/>
  34. <b>P/T: </b>$p_t<br/>
  35. <b>L/P: </b>$le_pr<br/>
  36. <b>INF: </b>$info<br/>
  37. <b>NR: </b>$nr_katalog<br/>
  38. <b>DOST: </b>$dostep<br/>
  39. <b>***</b><br/>";
  40. endwhile;
  41. print "<p align=\"center\"><a href=\"http://localhost/mar.wml\"><br/><b>Powrót</b></a></p>";
  42. endif;
  43. ?>
  44. </p>
  45. </card>
  46. </wml>


pozdrawiam!!!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
nospor
post 23.01.2006, 13:26:23
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




headers alredy sent... bylo milion razy. poszukaj na forum.

masz tez:
http://phppl.ezpublish.no/phppl/wortal/art...ch_programistow


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
vtuner
post 23.01.2006, 14:03:42
Post #3





Grupa: Zarejestrowani
Postów: 220
Pomógł: 10
Dołączył: 23.08.2005
Skąd: Łódź

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


jest jeszcze jeden sposob. Mzna uzyc META

  1. <META HTTP-EQUIV='Refresh' CONTENT='czas; URL=strona'>


I bedzie dzialalo. Mozesz go sobie umieszczac gdzie chcesz
Go to the top of the page
+Quote Post
dr_bonzo
post 23.01.2006, 14:19:15
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Naucz sie oddzielac logike aplikacji (kod php) od prezentacji danych! (html) -- unikniesz takich sytuwacji:
1. wysylasz naglowki z typem WML - OK
2. laczysz sie z baza, pobierasz to co masz pobrac, sprawdzasz czy jakistam warunek jesst spelniony
3. jesli tak, to dajesz przekierowanie header (! zauwaz ze do tej pory NIC nie wyslales do przegladarki i header zadziala);
jesli nie to wyswietlasz dane <wml ..... za pomoca printa()/echo lub systemu szablonow.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:13