Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql] problem z logowaniem
gebp
post 11.05.2006, 10:36:32
Post #1





Grupa: Zarejestrowani
Postów: 180
Pomógł: 6
Dołączył: 10.04.2006

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


1.Mam mały problem. Hasło i login wysyłane POST'em. plik index2.php odpowiada za logowanie. Problem polega na tym iż przy błednym podaniu loginu/ hasła i ponownej próbie zalogowania (z poprawnym loginem/hasłem) wywala mnie mimo tego do logowani. Pomaga dopiero "zrestartowanie" przeglądarki (dot. IE i Firefox).
index2.php.
  1. <?php
  2. if (empty ($_SESSION['user'])) {$_SESSION['user']= $_POST['login'];};
  3. if (empty ($_SESSION['pass'])) {$_SESSION['pass']= $_POST['pass'];};
  4.  
  5. $l=$_SESSION['user'];
  6. mysql_connect("mysql.yoyo.pl","*****","******");
  7. $s1 = "SELECT nazwa, pass FROM sklepy WHERE nazwa like '$l'";
  8. $w= mysql_query($s1);
  9. $pnazwa= $w1['nazwa'];
  10. $ppass=$w1['pass'];
  11.  
  12. if ( (!isset($_SESSION['user'])) AND (!isset($_SESSION['pass'])) )
  13. { header("location: index.html");
  14. exit();}
  15. if(($_SESSION['user'] === $pnazwa) AND ($_SESSION['pass'] === $ppass) )
  16.  {$_SESSION['autuser']=1;
  17.  echo ("<b>ZALOGOWANY: </b>".$_SESSION['user']."</BR></BR></BR>");
  18. }
  19.  else {
  20.  echo ('
  21.  <TABLE>
  22.  <TR><TD>Niepoprawny login lub hasło --> ACESS DENIDED</TD></TR>
  23.  <TR><TD><a href="index.html"> LOGOWANIE </a></TD></TR>
  24. </TABLE></BR>');
  25.  exit();}
  26. ?>
  27. <HTML>
  28. <a href="ph.php"><b><font color="#FF9900">ZMIANA HASŁA</font></b></a></BR> </BR>
  29. <a href="dsprz.php"><b><font color="#0066FF">SPRZEDAŻ</font></b></a></BR></BR>
  30. <a href="wyniki.php"><b><font color="#00CC00">WYNIKI SKLEPÓW</font></b></a></BR></BR>
  31. <a href="poprawa.php"><b><font color="#CC6600">POPRAWIENIE DANYCH SPRZEDAŻOWYCH</font></b></a></BR></BR>
  32. <a href="panel1.php"><b><font color="#FF66FF">PANEL ADMINISTRATORA</font></b></a>/<BR></BR>
  33. <a href="logout.php"><b><font color="#FF0000">WYLOWGOWANIE</font></b></a></BR></BR>
  34. </HTML> 


2. Problem drugi dotyczy kodowania polskich znaków driaktycznych. Przeglądałem forum i nie zabardzo wiem jak sobie z tym poradzić. Wszystkie pliki oprócz index.html mam *.php.
Gdzie i jak mam umieścić dane dot. kodowania. Próbowałem wstawić mete przed <?php...?> ale cosik sie kisiło. Jakby ktoś mógł podpowiedzieć.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
nospor
post 11.05.2006, 10:40:02
Post #2





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




Cytat
dot. IE i Firefox).
A Opery to nie dotyczy?
Odpowiem sam: Dotyczy smile.gif to dotyczy kazdej przęglądarki.

  1. <?php
  2. if (empty ($_SESSION['user'])) {$_SESSION['user']= $_POST['login'];};
  3. if (empty ($_SESSION['pass'])) {$_SESSION['pass']= $_POST['pass'];};
  4. ?>

Ten kod odpowiada za Twoje "problemy". Jesli sesja pusta, to wrzucasz do niej to co w poscie. jesli nie jest pusta to olewasz to co z posta. A potem do obróbki danych pobierasz wszystko z sesji a nie z posta, wiec sie nei dziw ze musisz przegladarke restartowac, by odswierzyly ci sie dane z forma, gdyz dopiero to powoduje zniszczenie sesji i wpisanie na nowo do niej danych z formularza.


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

"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

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: 19.07.2025 - 06:42