Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Mechanizm sesji - weryfikacja logowania ~ problem
karolski
post 15.04.2005, 16:33:02
Post #1





Grupa: Zarejestrowani
Postów: 199
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Czymiasto

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


Oto skrypyt login.php który weryfikuje dane z formularza i sprawdza czy zgadza sie z uzytkownikiem w bazie a nastepnie rejestruje sesje problem jest w tym ze nie wiem jak przebudowac ten skrypt wyglada on nastepujaco:

  1. <?php
  2.  
  3.  
  4. include ('mysql_connect.inc.php');
  5. polacz ();
  6.  
  7. if (isset($login) && isset($haslo))
  8. { 
  9.  
  10. $zapytanie = mysql_query (&#092;"SELECT id, login, haslo, prawa FROM nuclear_admin WHERE login = \"$login\"\");
  11. $wynik = mysql_query($zapytanie);
  12.  
  13. while ($row = mysql_fetch_array($zapytanie)) {
  14. $id = $row['id'];
  15. $login_db = $row['login'];
  16. $haslo_db = $row['haslo'];
  17. $prawa = $row['prawa'];
  18. }
  19.  
  20.  
  21. if ($login == $login_db && $haslo == $haslo_db)
  22. { 
  23.  
  24.  /// tutaj bylo session_start ();
  25.  
  26. session_register('login');
  27.  
  28. session_register('prawa');
  29.  
  30. header(&#092;"Location: main.php\");
  31.  
  32. exit(); 
  33. } 
  34. else 
  35. {
  36. echo 'Błędny login lub hasło!';
  37. }
  38. } 
  39. else 
  40. {
  41.  include ('includes/naglowek.inc');
  42. <form method=\"post\" action=\"login.php\" style=\"display:inline;\">
  43.  
  44. Login: <input type=\"text\" size=\"20\" name=\"login\"><br> 
  45.  
  46. Hasło: <input type=\"hasloword\" size=\"20\" name=\"haslo\"><p> 
  47.  
  48. <input type=\"submit\" value=\"Zaloguj\"
  49.  
  50. </form>
  51. ';
  52. include ('includes/stopka.inc');
  53. }
  54. ?>


pierwotnie session_start (); bylo powyzaj session_register('login'); ale jak podpiolem weryfikacje danych z bazy i musialem sie polaczyc z baza to zaczely mi wyskakiwac bledy ze nei moze wyslac ciasteczka, to dalem session_start (); na gore ale przez to chyba tongue.gif nie wykonuje sie header("Location: main.php");

co trzeba zrobic by nie bylo tego typu problemow questionmark.gifquestionmark.gif


--------------------
Pozdrawiam Karolski
Go to the top of the page
+Quote Post
SongoQ
post 15.04.2005, 17:20:17
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Nie powinno byc $_SESSION['login'] i $_SESSION['haslo'] i tak samo z tablica POST?


--------------------
Go to the top of the page
+Quote Post
karolski
post 15.04.2005, 17:34:11
Post #3





Grupa: Zarejestrowani
Postów: 199
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Czymiasto

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


Kod
Warning: Cannot modify header information - headers already sent by (output started at /home/unsorted/nuclear/_admin/mysql_connect.inc.php:2) in /home/unsorted/nuclear/_admin/login.php on line 34


coś takiego wyskakuje jest to wywolane przez: header('Location: main.php');

i to wywoluje ten błąd


--------------------
Pozdrawiam Karolski
Go to the top of the page
+Quote Post
SongoQ
post 15.04.2005, 17:42:02
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Sprawdz czy przed przeladownaiem strony czegos nie wysylasz do przegladarki (echo)


--------------------
Go to the top of the page
+Quote Post
Diwi
post 15.04.2005, 17:42:41
Post #5





Grupa: Zarejestrowani
Postów: 245
Pomógł: 4
Dołączył: 22.01.2005

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


Zamień na coś takiego:

  1. <?php
  2.  
  3.  
  4. include ('mysql_connect.inc.php');
  5. polacz ();
  6.  
  7. if (isset($login) && isset($haslo))
  8. {
  9.  
  10. $zapytanie = mysql_query (&#092;"SELECT id, login, haslo, prawa FROM nuclear_admin WHERE login = \"$login\"\");
  11. $wynik = mysql_query($zapytanie);
  12.  
  13. while ($row = mysql_fetch_array($zapytanie)) {
  14. $id = $row['id'];
  15. $login_db = $row['login'];
  16. $haslo_db = $row['haslo'];
  17. $prawa = $row['prawa'];
  18. }
  19.  
  20.  
  21. if ($login == $login_db && $haslo == $haslo_db)
  22. {
  23.  
  24.  /// tutaj bylo session_start ();
  25.  
  26. session_register('login');
  27.  
  28. session_register('prawa');
  29.  
  30. header(&#092;"Location: main.php\");
  31.  
  32. exit();
  33. }
  34. else
  35. {
  36. echo 'Błędny login lub hasło!';
  37. }
  38. }
  39. else
  40. {
  41. include ('includes/naglowek.inc');
  42. <form method=\"post\" action=\"login.php\" style=\"display:inline;\">
  43.  
  44. Login: <input type=\"text\" size=\"20\" name=\"login\"><br>
  45.  
  46. Hasło: <input type=\"hasloword\" size=\"20\" name=\"haslo\"><p>
  47.  
  48. <input type=\"submit\" value=\"Zaloguj\">
  49.  
  50. </form>
  51. ';
  52. include ('includes/stopka.inc');
  53. }
  54.  
  55. ?>


I po kłopocie
Go to the top of the page
+Quote Post
karolski
post 15.04.2005, 17:49:51
Post #6





Grupa: Zarejestrowani
Postów: 199
Pomógł: 0
Dołączył: 12.02.2004
Skąd: Czymiasto

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


dzięki zakończyłeś własnie mój życiowy problem z header('Location:..... biggrin.gif


--------------------
Pozdrawiam Karolski
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:44