Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MD5
Chrom
post 25.02.2006, 15:44:05
Post #1





Grupa: Zarejestrowani
Postów: 240
Pomógł: 17
Dołączył: 28.12.2005
Skąd: Warszawa

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


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. ?>
Go to the top of the page
+Quote Post
dr_bonzo
post 25.02.2006, 15:55:10
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


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.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Chrom
post 25.02.2006, 16:10:46
Post #3





Grupa: Zarejestrowani
Postów: 240
Pomógł: 17
Dołączył: 28.12.2005
Skąd: Warszawa

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


  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?
Go to the top of the page
+Quote Post
mike
post 25.02.2006, 16:15:47
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


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()
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: 14.08.2025 - 02:12