Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przekierowanie
-Gość_Adam-
post
Post #1





Goście







Witam, pisze szybko bo zaraz rozwale komputer ze zlosci mad.gif
Chodzi o to, ze od ponad 3 godzin siedze nad jedna rzecza w tym php - przekierowaniem. Latwo wam mowic:

  1. <?php
  2.  
  3. header(&#092;"Location: index.php\");
  4.  
  5. ?>


Tylko ze ta podejrzana funckja header strasznie dziwnie dziala dry.gif
Jezeli odpalam skrypt:

  1. <?
  2.  
  3. header(&#092;"Location: index.php?wds=1\");
  4.  
  5. ?>


php automatycznie przekierowywuje na rzadana strone, jesli jednak juz wstawie te dwie linijki w bardziej rozbudowany skrypt to nic sie nie dzieje procz pustej, bialej strony sadsmiley02.gif

Bardzo prosze o pomoc

PS. wiem ze kilka postow nizej jest temat o takiego typu problemie jednak nie znam nawet podstaw php i niezrozumiale sa dla mnie te funckje ob_start itp.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
hwao
post
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




  1. <?php
  2. ob_start(); // w 1 linijce kodu (glowny plik)
  3.  
  4. echo 'uuuuu';
  5.  
  6. header( 'lcoation: xxx.php' );
  7. exit; // dla zasady;-)
  8.  
  9. ?>


Cala zawartosc strony jest buffowana przed zaczeciem jej wysylania dzieki temu naglowek moze spokojnie zostac "wyslany" na koncu (a zawsze musi on byc wsylany na poczatku).
Go to the top of the page
+Quote Post
-Gość_Adam-
post
Post #3





Goście







A jezeli moj skrypt sklada sie z 2 plikow a w tym:

1 plik - formularz + wyswietlanie zawartosci mySQL
2 plik - plik odbierajacy dane z formularza i wysylajacy je do mySQL

to w takim razie gdzie mam umiescic ob_start(); bo sie pogubilem dry.gif
Go to the top of the page
+Quote Post
hwao
post
Post #4


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




w glownym czyli jak masz
strona.php/cos.php

to daj to w 1 linijce pliku
cos.php
Go to the top of the page
+Quote Post
-Gość_Adam-
post
Post #5





Goście







Kurde sorka, ze tak zasmiecam forum, ale nadal nie rozumiem gdzie mam wstawic ob_start(); sad.gif Moze przedstawie tu szczegolowo cala sprawe:

Otoz moj skrypt dokladnie sklada sie z 3 plikow:

baza.php - laczy z baza danych

  1. <?php
  2.  
  3.  //Ustawienia
  4.  $sql_host = &#092;"127.0.0.1\";
  5.  $sql_user = &#092;"***\";
  6.  $sql_pass = &#092;"***\";
  7.  $sql_baza = &#092;"mysqldb\";
  8.  
  9.  //Laczenie z baza danych
  10.  $db = mysql_connect(&#092;"$sql_host\", \"$sql_user\", \"$sql_pass\");
  11.  mysql_select_db(&#092;"$sql_baza\",$db);
  12.  
  13. ?>



index.php - wyswietla informacje pobrane z bazy danych oraz umozliwia wyslanie nowych danych do bazy za posrednictwem formularza i pliku dodaj.php

  1. <?
  2.  include 'baza.php';
  3.  
  4.  //Wyswietl wszystkie komentarze
  5.  $sql = &#092;"SELECT * FROM komentarze ORDER BY b_id DESC\";
  6.  $result = mysql_query(&#092;"$sql\",$db);
  7.  
  8.  if($result)
  9.  {
  10.  while($row = mysql_fetch_array($result))
  11.  {
  12. echo &#092;"<TABLE BORDER=\"0\" width=\"35%\">
  13. <TR>
  14. <TD>&#092;".$row[\"b_tresc\"].\"</td>
  15. </TR>
  16. <TR>
  17. <TD bgcolor=&#092;"#EFEFEF\">
  18. <table border=&#092;"0\" width=\"100%\">
  19. <tr>
  20. <td width=&#092;"69%\">\";
  21. if($row[&#092;"b_email\"]!='')
  22. {
  23. echo &#092;"<a href=\"mailto: \".$row[\"b_email\"].\"\">\".$row[\"b_osoba\"].\"</a>\";
  24. }
  25. else
  26. {
  27. echo $row[&#092;"b_osoba\"];
  28. }
  29. echo &#092;"
  30.  
  31. </td>
  32. <td>&#092;".$row[\"b_data\"].\"</td>
  33. </tr>
  34. </table>
  35. </td>
  36. </TR>
  37. </TABLE><BR><BR>&#092;";
  38.  }
  39.  }
  40.  mysql_close($db);
  41.  ?>
  42.  
  43. <FORM NAME=\"dodaj_komentarz\" METHOD=\"post\" ACTION=\"dodaj.php\">
  44. ...
  45. <INPUT TYPE=\"submit\" VALUE=\" dodaj komentarz \">
  46. </FORM>



dodaj.php - dodaje do bazy danych odebrane zmienne z formularza zawartego w pliku index.php

  1. <?php
  2.  
  3.  //Sprawdz czy wypelniono wszystkie wymagane pola
  4.  if (($f_osoba == &#092;"\") || ($f_tresc == \"\"))
  5.  {
  6. //////////////TU WLASNIE MA NASTAPIC PRZEKIEROWANIE/////////////////
  7. header(&#092;"Location: index.php?wdm=1\");
  8. //////////////TU WLASNIE MA NASTAPIC PRZEKIEROWANIE ///////////////
  9.  }
  10.  
  11.  include 'baza.php';
  12.  
  13.  $data = date(&#092;"d.m.Y H:i\");
  14.  
  15.  //Dodaj nowy komentarz do bazy danych
  16.  $sql = &#092;"INSERT INTO komentarze (b_data, b_osoba, b_email, b_tresc) VALUES ('$data','$f_osoba', '$f_email', '$f_tresc')\";
  17.  $result = mysql_query(&#092;"$sql\",$db);
  18.  
  19.  mysql_close($db);
  20.  
  21. ?>


Maksymalnie skracalem kod aby byl bardziej przejrzysty. Raz jeszcze przepraszam i jednoczesnie raz jeszcze prosze o pomoc.
Go to the top of the page
+Quote Post
hwao
post
Post #6


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




w takim razie na samej goze dodaj.php dodajesz
  1. <?php ob_start(); ?>
Go to the top of the page
+Quote Post
-Gość_Adam-
post
Post #7





Goście







Wielkie dzieki biggrin.gif wszystko dziala jak nalezy
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 Aktualny czas: 22.08.2025 - 00:46