Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Logowanie
Forum PHP.pl > Forum > PHP
k_uba
Mam skrypcik logowanie.php po weryfikacji danych powinno sie logowac na stronie SEsje sa wklejam sam fragment logowania. Mianowicie co sie dzieje Jak wprowadzam prawidlowe dane to przechodzi na wybrana strone, Jak wprowadzam prawidlowy Nick i bledne haslo to wyswietla mi sie komunikat ze jest podane zle haslo. Ale jak wprowadzam zly nick (ktorego nie ma w bazie) wyskakuj mi Warning takiej treści:

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 3 in D:\Studia\Programy\xampp\htdocs\praca\logowanie.php on line 89

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 4 in D:\Studia\Programy\xampp\htdocs\praca\logowanie.php on line 93
Nie ma takiego uzytkownika w bazie

A oto skrypcik logowanie.php

  1. <form action = 'logowanie.php' method = 'POST'>
  2.  
  3. <Table border = 1>
  4.  
  5. <tr>
  6. <font size = 3><b>Wprowadz dane aby sie zalogowac: </b></font><br /><br />
  7. </tr>
  8. <tr>
  9. <td>
  10. <b> Login: </b>
  11. </td>
  12. <td>
  13. <input type = 'text' name = 'login' size = '40' maxlenght = '100' value = 
  14. '<?php 
  15. if (isset ($_POST ['login']))
  16. echo $_POST ['login'];
  17. ?>'
  18. />
  19. </td>
  20. </tr>
  21. <tr>
  22. <td>
  23. <b> Haslo: </b>
  24. </td>
  25. <td>
  26. <input type = 'password' name = 'haslo' size = '40' maxlenght = '100' value = 
  27. '<?php 
  28. if (isset ($_POST ['haslo']))
  29. echo $_POST ['haslo'];
  30. ?>'
  31. />
  32. </td>
  33.  
  34. </tr>
  35. <tr>
  36. <td>
  37. <input type="reset" value="Reset">
  38. </td>
  39. <td>
  40. <input type = 'submit' name ='log' value = 'Zaloguj'/>
  41. </td>
  42. </tr>
  43. </td>
  44. </tr>
  45. </Table>
  46. </table>
  47. </form>
  48.  
  49.  
  50. <?php
  51.  
  52. if (isset ($_POST ['log'])) {
  53.  
  54. if (empty ($_POST ['login'])) {
  55. $login = FALSE;
  56. }else{
  57. $login = $_POST ['login'];
  58. }
  59.  
  60. if (empty ($_POST ['haslo'])) {
  61. $haslo = FALSE;
  62. }else{
  63. $haslo = $_POST ['haslo'];
  64. }
  65. $md_haslo = md5($haslo);
  66.  
  67. if ($login && $haslo) {
  68.  
  69. $conn=@mysql_connect("localhost","root","kuba");
  70. @mysql_select_db("praca",$conn);
  71.  
  72. $sql="SELECT password FROM user WHERE Nick = '$login'";
  73. $res = mysql_query($sql, $conn);
  74. $zmienna = mysql_result($res, 0, 0);
  75.  
  76. $sql_login="SELECT Nick FROM user WHERE Nick = '$login'";
  77. $res_login = mysql_query($sql_login, $conn);
  78. $zmienna_login = mysql_result($res_login, 0, 0);
  79. }
  80.  
  81. if($login != $zmienna_login){
  82. print("Nie ma takiego uzytkownika w bazie");
  83. }
  84. elseif($md_haslo==$zmienna){
  85. echo "<script type='text/javascript'>location.href='dokumenty.php';</script>";
  86.  }
  87. else{
  88. print("Podales bledne haslo");
  89. }
  90. }
  91.  
  92. ?>
marast78
sprawdzaj wykonanie zapytanie czyli
  1. <?php
  2. if($res = @mysql_query($sql, $conn))
  3. $zmienna = mysql_result($res, 0, 0);
  4. else 
  5.  $zmienna ="";
  6. ?>


poza tym po co dwa razy wykonujesz to zapytanie ? lepiej raz a dobrze
Dandelion
http://forum.php.pl/index.php?s=&showt...st&p=319947

spojrz na ten przyklad

widzisz roznice w ilosci zapytan i wykorzystywanych zmiennych
sanchoo
Mam pytanie... chodzi mi o bezpiecznstwo:)
... najpierw moze kod:
spr: ID i PASS
  1. <?php
  2.  
  3.  
  4.  $login=$_POST['login'];
  5.  $haslo=md5($_POST['haslo']);
  6.  
  7.  
  8. file_exists('_private/user.dat') or
  9. die('Brak pliku danych uzytkownikow');
  10. $hFile = fopen('_private/user.dat', 'r');
  11. while (!feof($hFile)) {
  12. $ud = explode(':', fgets($hFile, 1024));
  13.  if($login==$ud[0] && chop(($haslo)==chop($ud[1]))){
  14. $t=1;
  15.  setcookie ("uzytkownik", $ud[0]);
  16.  fclose($hFile);
  17. header('Location: wpisywanie.php');
  18. break;
  19. }
  20. else {header('Location: admin.htm');
  21. }
  22. }
  23. ?>



i teraz na innej stronie chcialem zrobic tak:

  1. <?php
  2. if(!($uzytkownik)){
  3.  
  4. nie jestes zalogowany pupa...
  5. }
  6. else jestem zalogowany... i tu tres stronki.....
  7. ?>


hmm.. wsyztsko niby ok... ale teraz nie wystarczylo by tej strony wyzej wywolac np tak:
www.blebleble.pl/index.php?uzytkownik=lama" title="Zobacz w manualu php" target="_manual
i ... bede mial dostep do "tajnych danych"??
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.