Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z header()
Forum PHP.pl > Forum > Przedszkole
Zac
witam mam taki oto skrypt:
  1. <?php
  2. ?>
  3. <html>
  4.  <head>
  5.    <title>tytul</title>
  6.          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  7.   </head>
  8. <body>
  9. <?php
  10.    error_reporting(E_ALL);
  11.    
  12.    /* DEKLARACJA HASŁA*/
  13.    define("LOGIN","admin");
  14.    define("PASS","ddd3e0f8dc5997b994ef50464632e4db");
  15.    
  16.    echo '<form method="POST" action="">
  17.          Login: <input type="text" name="login"><br />
  18.          Hasło: <input type="password" name="haslo"><br />
  19.          <input type="submit" name="loguj" value="Zaloguj"><br /><br />
  20.          </form>';
  21.          
  22.     if (isset($_POST['login']) && isset($_POST['haslo']))
  23.      {
  24.       $login=trim(strip_tags($_POST['login']));
  25.       $haslo=trim(strip_tags(md5($_POST['haslo'])));
  26.        if ($login==LOGIN && $haslo==PASS)
  27.         {
  28.          session_name('admin');
  29.          session_start();
  30.          session_register('status');
  31.          session_register('login');
  32.          session_register('haslo');
  33.          $_SESSION['status']=1;
  34.          $_SESSION['login']=$login;
  35.          $_SESSION['haslo']=$haslo;
  36.          header("Location: product.php");  
  37.         }
  38.        else
  39.        {
  40.         echo 'Podałeś nieprawidłowe dane.';
  41.        }
  42.      }    
  43.    
  44. ?>
  45.  </body>
  46. </html>
  47. <?php
  48. ?>


Jeżeli podam błędne dane skrypt wyświetla mi komunikat tak jak powinien, z kolei kiedy podam prawidłowe dane, skrypt nie pokazuje komunikatu, nie zwraca żadnego błędu, ani nie przenosi mnie do
"product.php". Jeżeli zamiast header(), wstawiłem np. echo 'ok'; skrypt poprawnie wyświetlił komunikat więc wnioskuje że warunek jest spełniony. Dlaczego header() nie działa?
Pozdrawiam.
nevt
a spróbuj jako Location podać pełen odnośnik http a nie tylko nazwę pliku, np. http://www.twoja_domena.pl/ewentualne_podk...ogi/product.php
Zac
próbowałem, niestety nic to nie pomogło
strife
Cytat(Zac @ 1.10.2008, 23:47:20 ) *
próbowałem, niestety nic to nie pomogło

Tzn. co dokładnie się dzieje? Żadna reakcja przeglądarki ? Zobacz jakie nagłowki dostajesz po poprawnym wysłaniu danych (polecam plugin dla firefox'a `Live http headers`). I zobacz czy np. na stronę onetu Cię przekieruje, aby wykluczyć błąd po stronie samego pliku product.php.

Pozdrawiam.
gox
A to tak mozna?
najpierw wyswietlic formularz a potem header(location)?
gox
i na pewno mozesz dac po header(); exit'a;
Zac
co do reakcji przeglądarki wygląda to tak, że zamiast przenieść do product.php wraca do formularza, z poczatku myślałem ze źle sprawdzam dane z sesji w product.php ale niestety to też nie jest przyczyną.
pyro
  1. <?php
  2. define("LOGIN","admin");
  3.    define("PASS","ddd3e0f8dc5997b994ef50464632e4db");
  4. ?>


dzieki za login i haslo tongue.gif
Zac
i co sobie z nimi zrobisz ? smile.gif i tak to jest wersja testowa skryptu
rozwiązałem problem, w product.php zamieszałem trochę z klamrami w warunkach i dlatego w pewnym momencie zawsze odsyłało mnie do indexu. Mój błąd, ale dzięki za odpowiedzi. Pozdrawiam.
nexis
Cytat(Zac @ 1.10.2008, 23:31:51 ) *
  1. <?php
  2. session_register('status');
  3. session_register('haslo');        
  4. ?>


Tego się już NIE UŻYWA!
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.