Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie wyciąga danych z bazy mysql
Forum PHP.pl > Forum > Przedszkole
zgred
Zacząłem pisać skrypt dla swojego serwisu i już na początku pojawiły się błędy - system logowania nie działa. Nie ukończyłem jeszcze rejestracji, na razie pojawiają się problemy już przy samym logowaniu. Skrypt wygląda tak:
  1. <?php
  2. mysql_pconnect(localhost, *user, *haslo) or die ($error[]="mysql.nieudanepolaczenie");
  3.  
  4. if(!isset($_SESSION[user_logg_id]))
  5.  $_SESSION[user_logg_id]=0;
  6.  
  7.  
  8. if(($_SESSION[user_logg_id]==0)&&($QUERY_STRING[zobacz]==logowanie))
  9.  if($_POST[haslo]==mysql_query('SELECT haslo FROM serwis_users WHERE nick=$_POST[nick]'))
  10. $_SESSION[user_logg_id]=mysql_query('SELECT id FROM serwis_users WHERE nick=$_POST[nick]');
  11.  else
  12. $error[]="logowanie.zledane";
  13.  
  14. if($QUERY_STRING[zobacz]==wylogowywanie)
  15.  $_SESSION[user_logg_id]=0;
  16.  
  17. session_register($_SESSION[user_logg_id]);
  18.  
  19. ?>
  20. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  21. <html xml:lang="pl" lang="pl" xmlns="http://www.w3.org/1999/xhtml">
  22. <head>
  23. <title>  </title>
  24. <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
  25. <style type="text/css">
  26.  
  27. </style>
  28. </head>
  29. <body>
  30.  
  31. <?php
  32. for($a=0;$a<sizeof($error);$a++)
  33.  echo"$error[$a]<br />";
  34.  
  35.  
  36. if($_SESSION[user_logg_id]!=0)
  37.  echo "Jesteś zalogowany!<br /><a href=\"?zobacz=wylogowywanie\">Wyloguj się</a>";
  38. else 
  39.  echo "Ekran logowania:<br /><form method=\"post\" action=\"?zobacz=logowanie\">Nazwa użytkownika: <input type=\"text\" name=\"nick\" size=\"30\"><br />Hasło: <input type=\"password\" name=\"haslo\" size=\"30\"><br /><input type=\"submit\" value=\"Zaloguj się\"></form>";
  40.  
  41. ?>
  42.  
  43.  
  44.  
  45. </body>
  46. </html>


W phpmyadminie stworzyłem dodałem do tabeli pierwsze konto z nr 1, ale zalogować się na nie nie można. Wygląda to wszystko tak, jakby nie można było wyciągnąć informacji z bazy danych. Podejrzewam również, że może to mieć coś wspólnego z metodą porównywania napisów (na stronie dałem utf-8, bo bałem się, że charset-8859-2 będzie się nie zgadzać z mysqlowym zapisem) czy typemtabeli (ustawione jest domyslne myisam, bo są to rzeczy, których nie rozumiem i których nikt nie był mi łaskawy wytłumaczyć...
pEbE
Boże człowieku!!

1. mysql" title="Zobacz w manualu php" target="_manual
2. mysql_query" title="Zobacz w manualu php" target="_manual, mysql_fetch_array" title="Zobacz w manualu php" target="_manual
3. Dane z tabeli zapisujemy z APOSTROFAMI! np:
  1. <?php
  2. $_SESSION['user_logg_id'];
  3. ?>

4. if" title="Zobacz w manualu php" target="_manual
  1. <?php
  2. if($_SESSION['user_logg_id']==&& $QUERY_STRING['zobacz']==logowanie) {
  3.  /* TU przerabiasz kod */
  4. }
  5. ?>

  1. <?php
  2. if($QUERY_STRING['zobacz']==wylogowywanie) {
  3.  $_SESSION['user_logg_id']=0;
  4. }
  5. ?>

5. Notka z manuala:
Cytat
Jeśli używane są tablice $HTTP_SESSION_VARS/$_SESSION i i wyłączona jest opcja register_globals, nie powinno się używać session_register(), session_is_registered() i session_unregister().

6.
  1. <?php
  2. mysql_query("SELECT id FROM serwis_users WHERE nick=$_POST['nick']");
  3. ?>

7. ERROR REPORTING = ALL

Powiem tylko OMG...
Ty korzystasz z jakiejś ksiązki?
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.