Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: MD5
Forum PHP.pl > Forum > Przedszkole
Chrom
Witam,
Dlaczego po przesłaniu hasła z formularza, przy sprawdzeniu dlaczego nie loguje, wyświetla tylko pierwsze 26 znaków, powinno być 32?
  1. <?php
  2. $haslo= md5($haslo);
  3. echo '<h4>'."$_POST['haslo']".'</h4><br>';
  4. ?>
dr_bonzo
Daj wiecej kodu. Ztej ilosci co tutaj widze to wnioskuje:
Jesli to ( $_POST['haslo'] ) jest haslo z formularza
to $haslo bedzie rowne md5($haslo ) i $haslo bedzie mialo 32 znaki, a nie $_POST['haslo'], ktore wyswietlasz.
Chrom
  1. <?
  2. $adres=$_POST['adres'];
  3. $nr_mieszkania=$_POST['mieszkanie'];
  4. $haslo=$_POST['haslo'];
  5. echo "<h4>$adres $nr_mieszkania $haslo</h4>";
  6. if (!$adres || !$nr_mieszkania || !$haslo)
  7. {
  8.  echo 'Brak parametrów wyszukiwania. Wróć do poprzedniej strony i spróbuj ponownie.';
  9.  exit;
  10. }
  11.  
  12. $nr_mieszkania = addslashes($nr_mieszkania);
  13. $haslo = addslashes($haslo);
  14. $haslo= md5($haslo);
  15. $host="";
  16. $user= ""; 
  17. $pas="";
  18. $db_name = "sam";
  19.  
  20.  
  21. $connection = @mysql_connect("$host", "$user", "$pas") or die("Brak połączenia z bazą danych.");
  22.  
  23. $db = @mysql_select_db($db_name, $connection) or die("Couldn'qt select database.");
  24.  
  25. $dane = @mysql_query("SELECT * FROM user WHERE adres=$adres and nr_mieszkania = $nr_mieszkania AN
    D haslo = $haslo"
    ) or die(mysql_error());  
  26. if(mysql_num_rows($dane) == 1) {
  27. echo '<h4>Wszystkie parametry logowania zostały podane poprawnie</h4>';
  28. } else {
  29. echo '<h4>'."$haslo".' Coś nie tak.</h4><br>';
  30. }  
  31.  
  32. $result = @mysql_query($dane, $connection) or die("Couldn't execute query.");
  33.  
  34. while ($row = mysql_fetch_array($result)) {
  35. $adres2 = $row['adres'];
  36. $nr_mieszkania2 = $row['nr_mieszkania'];
  37. $haslo2 = $row['haslo'];
  38.  
  39. $display_block .= "<h4>$adres2<br>$nr_mieszkania2<br>$haslo2</h4>" ;
  40. }
  41. mysql_close($connection);
  42.  
  43. ?>
  44.  
  45.  
  46. <? echo "$display_block"; ?>

Proszę cały kod, ale w takim wypadku zahacza o MySQL-a
Chciałem wyświetlić dane bo nie daję rady z całym zapytaniem SQL i chciałem sprawdzić czy wszystko dochodzi?
mike
1. Po co dajesz dla hasła addslashes()? Wywal to.
2. W zapytaniu wartości dla kolumn tekstowych powinny być ujęte w apostroft '
  1. <?php
  2.  
  3. $dane = mysql_query( "SELECT * FROM user WHERE adres='" . $adres . "' AND nr_mieszkania = " . $nr_mieszkania . " AND haslo = '" . $haslo . "'" );
  4.  
  5. ?>

3. Dla danych kierowanych do bazy danych nie stosuj addslashes() tylko mysql_escape_string() lub mysql_real_escape_string()
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.