Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie danych z mysql[php]
Forum PHP.pl > Forum > PHP
Phomerus
No wie csluchajcie... mam tabele users w bazie danych
Kod
              Field          Type            Attributes  Null  Default Extra
              login          varchar(25)       BINARY     No         -        -
              password      varchar(15)        BINARY     No         -         -
              mail           varchar(40)                  No         -        -


No i tu mam skrypt logowania:
  1. <?
  2. $password=$_POST['password'];
  3. $login=$_POST['login'];
  4. $dbh= mysql_connect("serw", "uzyt", "haslo") or die ('I cannot connect to the database because: ' . mysql_error());
  5. mysql_select_db("pb_baza" , $dbh); 
  6. $sql = mysql_query("SELECT password FROM `users` WHERE login='$login'");
  7. $a = mysql_fetch_array($sql);
  8. if($a[password]==$password){
  9. echo"zalogowales sie pomyslnie!";
  10. echo "<a href="str.php">przejdź do strony głównej</a>";
  11. } 
  12. else{
  13. echo "blad, nieprawidlowe dane!";
  14. include("plik1.php");
  15. }
  16. ?>


I nie dziala?($a['password'] ma pusty ciag znakow) Mozecie powiedziec jaki robie blad?? Pozrowienia i wesolych swiat smile.gif
mike
1. Sprawdź (za pomocę mysql_num_rows() ) czy są zwracane jakieś dane z bazy.
2. A nóż to kwestia literówki w kodzie: Nie tak $a[password] tylko tak $a['password'] (apostrofy)
Phomerus
Sprawdzilem i zwracana jest wartosc 0.. czyli nie sa pobierane dane... w kodzie nie ma zadnych literowek(oprocz tamtej- poprawilem juz) co moze byc zle? Jak wykonuje to zapytanie w phpmyadminie to bez problemu zwraca mi haslo. Lacze sie z baza poprawnie, wyglada na to ze nie wybieram odpowiedniej bazy danych, ale przeciez wpisuje jej nazwe w 7 linii na pewno bez zadnej literowki..moj uzytkownik w bazie ma wszystkie uprawnienia... pomocy..
mike
Zrób tak (w fazie testów, normalnie tak nie rób ):
  1. <?php
  2. // ...
  3. echo $strQuery = "SELECT password FROM `users` WHERE login='$login'";
  4. $sql = mysql_query( $strQuery );
  5. // ...
  6. ?>
... bedziesz miał pewność, że dane z formularza przychodzą a zapytanie jest poprawne
crash
A spróbuj print_r( $_POST ); bo poza możliwością, że dane nie dotarły z formularza więcej błędów tu raczej nie może się pojawić...
Phomerus
Ahm sorry juz dziala... skrypt uruchamialem na serwerze na swoim kompie a baza danych byla na innym i mimo ze sie laczylo z nia nie pobieralo danych, teraz wszystko w porzadku...
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.