Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Logowanie
k_uba
post 3.01.2007, 16:46:10
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 13.12.2006

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


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. ?>


Ten post edytował k_uba 3.01.2007, 22:48:29
Go to the top of the page
+Quote Post
marast78
post 4.01.2007, 14:35:54
Post #2





Grupa: Zarejestrowani
Postów: 176
Pomógł: 0
Dołączył: 30.11.2004

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


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

Ten post edytował marast78 4.01.2007, 14:37:57


--------------------
Go to the top of the page
+Quote Post
Dandelion
post 4.01.2007, 19:15:56
Post #3





Grupa: Zarejestrowani
Postów: 169
Pomógł: 0
Dołączył: 27.01.2006

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


http://forum.php.pl/index.php?s=&showt...st&p=319947

spojrz na ten przyklad

widzisz roznice w ilosci zapytan i wykorzystywanych zmiennych
Go to the top of the page
+Quote Post
sanchoo
post 11.02.2007, 21:01:58
Post #4





Grupa: Zarejestrowani
Postów: 161
Pomógł: 1
Dołączył: 11.02.2007
Skąd: Kraków

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


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"??
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: 19.07.2025 - 06:39