Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pomoc w skrypcie - logowanie
haksior
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 5.07.2007

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


Otóż stworzyłem skrypt który jest glowna funckja logowania do strony ;p
Problem w tym że skrypt nie działa.. chociaż warunki są równe - zaszyfrowany haslo md5 z formularza jest taki sam co haslo tez zaszyfrowane z pliku. sprawdzilem to funkcja echo. to dlaczego rownanie nie jest rowne ?
  1. <?php
  2. if (isset($_POST['login'])){
  3. if (file_exists('pass.inc.php')){
  4. $uchwyt = @fopen ('pass.inc.php', "r");
  5. if ($uchwyt) {
  6. while (!feof($uchwyt)) {
  7. $buffer = fgets($uchwyt, 4096);
  8. $dane=explode("|", $buffer);
  9.  
  10. if ($_POST['login']=='admin')
  11. {
  12. if (md5($_POST['haslo']) == $dane[1]){
  13. session_register("log_name");
  14. session_register("ADMIN");
  15. $_SESSION['log']='1';
  16. $_SESSION['log_name']=$_POST['login'];
  17. $_SESSION['ADMIN']=true;
  18. }
  19. }
  20. else
  21. {
  22.  
  23. if ($_POST['login']==$dane[0])
  24. {
  25. $has= md5($_POST['haslo']);
  26. $has2=$dane[1];
  27.  
  28. if ($has==$has2){ //w tym miejscu sie nie rowna tylko nie wiem dlaczego bo zmienne sa takie same
  29. echo('log');
  30. session_register("log_name");
  31. $_SESSION['log']='1';
  32. $_SESSION['log_name']=$_POST['login'];
  33. }
  34. }
  35. }
  36. }
  37. fclose ($uchwyt);
  38. }
  39. }
  40. else
  41. {
  42. echo('Bład serwera - nie można się zalogować');
  43. }
  44. }
  45.  
  46. if ($_SESSION['log'] == '1'){
  47. header('Location: ?strona=start');
  48. }
  49.  
  50. else
  51. {
  52. include('log.html');
  53.  
  54.  
  55. }
  56.  
  57. ?>
Może któs luknąc na kod ? a w pliku pass.inc.php hasla sa tak zapisane: login|haslo . haslo w pliku jest zaszyfrowane md5.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
singles
post
Post #2





Grupa: Zarejestrowani
Postów: 121
Pomógł: 26
Dołączył: 2.07.2007

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


haslo z pliku tekstowego ma prawdopodobnie znak konca wiersza na koncu "\r" albo "\n".

Sprobuj (zakładając, że $has2 to ta z pliku):

  1. <?php
  2. if ($has==trim($has2)){ //w tym miejscu sie nie rowna tylko nie wiem dlaczego bo zmienne sa takie same
  3. ?>


--------------------
Works for me => u mnie działa - blog o (o)programowaniu i nie tylko
meet.php - darmowe meetupy związane z PHP
Go to the top of the page
+Quote Post
haksior
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 5.07.2007

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


Tak oto chodziło... plik z haslami tworzylem ja sam i zapomnialem ze jesli ustawie je w kolumnie:
login|haslo
login|haslo
login|haslo
...
to pokazdym login|haslo dodawana jest \r znak nowego wiersza biggrin.gif
eh ale wpadka przy takim prostym skrypcie rolleyes.gif
temat można zamknąć lub usunąć - do moderatora
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 Aktualny czas: 20.08.2025 - 19:10