Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] przekierowanie
Forum PHP.pl > Forum > Przedszkole
pawelzdanio
Witam!

Pisałem już wcześniej w innym temacie a propos tego problemu, ale nikt chyba nie odczytal, wiec zalozylem nowy temat. Logi i hasło działa poprawnie natomiast nie mogę zrobić przekierowania funkcja header ;/ Będę ogromnie wdzięczny "wujkowi Dobra Rada":)

  1. <?php
  2. include('hasla.php');
  3. $logins=$_GET["login"];
  4. $haslos=$_GET["haslo"];
  5.  
  6. //Weryfikacja loginu i hasla
  7.  
  8. for ($i=0;$i<3;$i++)
  9. {
  10. if (($_GET[login]==$login[$i][0])&&($_GET[haslo]==$haslo[$i][1]))
  11. {
  12. $validation= 1;
  13. }
  14. }
  15. if ($validation==1)
  16. {
  17. header("Location: index.php");
  18. echo "Login i haslo poprawne!";
  19. }
  20. elseif (($_GET[login]==NULL)&&($_GET[haslo]==NULL))
  21. {
  22. echo "Zaloguj sie!";
  23. }
  24. else
  25. {
  26. echo "Login lub/i haslo niepoprawne!";
  27. }
  28. mysql_close($connection);
  29. ?>
webdice
A ja nie mogę włączyć komputer przyciskiem POWER, jak mi pomożesz to powiem Ci co jest nie tak w Twoim skrypcie, a tak na poważnie to napisz dokładnie co Ci nie działa.

P.S. Po co po exit dajesz echo?
pawelzdanio
Tak wiem echo jest niepotrzebne zupelnie..masz racje, ale po zalogowaniu nie przekierowuje mnie strone index.php tylko wywala mi blad:

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\Logowanie\restricted.php:6)
acztery
wstaw na poczatku skryptu on_start();
webdice
Było na tym forum już wiele razy, a zamiast zakładać drugi temat i tracić czas mogłeś wklepać to do google i miałbyś już dawno odpowiedź, naucz się sam rozwiązywać problemy a nie pytać o takie pierdoły na forum.
pawelzdanio
nie lapie gdzie dokladnie mam go wstawic ;/

Cytat(webdicepl @ 30.03.2007, 19:17:52 ) *
Było na tym forum już wiele razy, a zamiast zakładać drugi temat i tracić czas mogłeś wklepać to do google i miałbyś już dawno odpowiedź, naucz się sam rozwiązywać problemy a nie pytać o takie pierdoły na forum.

wiem, ze byly bo przegladalem, ale tamte rozwiazania nie przyniosly u mnie zadnego rezultatu
acztery
  1. <?php
  2. include('hasla.php');
  3. ?>
pawelzdanio
wlasnie tam wstawilem ale wyskakuje mi blad:

Fatal error: Call to undefined function on_start() in C:\wamp\www\Logowanie\restricted.php
acztery
ob_start pomylilo mi sie
pawelzdanio
znow ten sam blad:

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\Logowanie\restricted.php:6)
acztery
ta funkcja musi zostac wywolana 1 poczytaj..
webdice
Bo wstawiasz to pewnie w includowanym pliku, a wcześniej wysyłasz jakąś treść do przeglądarki.
pawelzdanio
nie wstawiam tego w includowanym pliku, nie dziala mi niestety ciagle ob_start i ob_end_flush() ;/ Dobra no nic poradze sobie moze z tym jakos inaczej. Pobieram hasla z bazy a pozniej pobieram od uzytkownika przez labele..
devnul
może być tak że używasz kodowania znaków utf i dodawany jest nagłówek BOM na początku skryptu co za tym idzie jest on wysyłany przed wykonaniem się czegokolwiek i przez to możesz mieć problem.
acztery
devnul mylisz się tzn ze ci co stosują utf-8 nie moga korzystac z ob_start() nowa wizja programowania. to pewnie ci nie dziala bo w złym miejscu to wtawiasz.

pisze ci ze masz blad w 6 lini jak ona wyglada?
pawelzdanio
Przesylam caly kod:

  1. <html>
  2. <head>
  3. <title>Strona logowania</title>
  4. </head>
  5.  
  6. <?php
  7. //laduje loginy i hasla z bazy danych
  8. include('admin.php');
  9. $connection=mysql_connect($db_host, $db_username, $db_password);
  10. if (!$connection)
  11. {
  12. die ("Polaczenie z baza danych nie udane! </br>". mysql_error());
  13. }
  14. $db_select= mysql_select_db($db_database);
  15. if (!$db_select)
  16. {
  17. die ("Wybor bazy danych niemozliwy! </br>". mysql_error());
  18. }
  19. $query= "SELECT Login, Haslo From passwords";
  20. $result= mysql_query($query);
  21. if(!$result)
  22. {
  23. die ("Wykonanie zapytania niemozliwe!". mysql_error());
  24. }
  25. $i=0;
  26. while ($result_row=mysql_fetch_row($result))
  27. {
  28. $login[$i][0]=$result_row[0];
  29. $haslo[$i][1]=$result_row[1];
  30. $i++;
  31. }
  32. mysql_close($connection);
  33. ?>
  34. <body>
  35. <center>
  36. </br>
  37. <form action="<?php echo($_SERVER['PHP_SELF']); ?>" methods"POST">
  38. <label>login :
  39. <input type="text" name="login" />
  40. </label>
  41. <br>
  42. <label>
  43. haslo:
  44. <input type="password" name="haslo" />
  45. </label>
  46. </br></br>
  47. <input type="submit" value="loguj" />
  48. </form>
  49. <?php
  50. //include('hasla.php');
  51. $logins=$_GET["login"];
  52. $haslos=$_GET["haslo"];
  53.  
  54. //Weryfikacja loginu i hasla
  55.  
  56. for ($i=0;$i<3;$i++)
  57. {
  58. if (($_GET[login]==$login[$i][0])&&($_GET[haslo]==$haslo[$i][1]))
  59. {
  60. $validation= 1;
  61. }
  62. }
  63. if ($validation==1)
  64. {
  65. header("Location: index.php");
  66. }
  67. elseif (($_GET[login]==NULL)&&($_GET[haslo]==NULL))
  68. {
  69. echo "Zaloguj sie!";
  70. }
  71. else
  72. {
  73. echo "Login lub/i haslo niepoprawne!";
  74. }
  75.  
  76. ?>
  77. </center>
  78. </body>
  79. </html>
devnul
wstaw to przed html
czyli
  1. <?php
  2. ?><html>...

bo to wlasnie on jest tym wysłanym contentem który bolał parser
pawelzdanio
Dziekuje!!! Zadzialalo!!! smile.gif smile.gif smile.gif
Ermes
Proste:

Rada dla wszystkich:

Jeśli ktoś korzysta z funkcji header(); to musi ją koniecznie wstawić przed jakimkolwiek html'em jaki ma na stronie czyli jakiś kod php w którym uzylismy header(); musi być koniecznie na początku bo inaczej nie zadziała smile.gif
kwiateusz
ew. istnieje coś takiego jak ob_start" title="Zobacz w manualu PHP" target="_manual zeby header działałw całej rozciągłości skryptu
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.