Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL][PHP]Dodaje te same rekordy do bazy, powtarzajace sie konta
rad11
post 7.11.2012, 17:25:22
Post #1





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

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


Witam panowie mam problem tego typu, że po wypelnieniu formularza i wyslaniu go do bazy rokord dodaje sie ale jest błąd:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\One_Piece\panel_rejestracji\rejestruj.php on line 13
Konto dfsa zostalo utworzonePrzejdz do logowaniaWróc do rejestracji

A powinien zanegować operację gdy juz takie konto istnieje w bazie nie wiem co tu źlę robię proszę o jakieś sugestie i pomoc w rozwiazaniu tego problemu:

  1. <?php
  2. include('../baza/otwarcie_bazy.php');
  3.  
  4. if (isset($_POST['konto']) and isset($_POST['password']) and isset($_POST['password2']) and isset ($_POST['meil']) )
  5. {
  6. if ($_POST['password']==$_POST['password2'])
  7. {
  8. $konto = mysql_real_escape_string (trim($_POST['konto']));
  9. $password = mysql_real_escape_string (trim($_POST['password']));
  10. $password_sha = sha1($password);
  11.  
  12. $ile =mysql_query("SELECT * FROM `uzytkownicy` WHERE login = '$konto' ");
  13. $ile = mysql_num_rows($ile);
  14.  
  15. if ($ile==0)
  16. {
  17. $zapytanie="INSERT INTO uzytkownicy (uzytkownicy_login, uzytkownicy_haslo, uzytkownicy_haslo_sha) VALUES('$konto','$password', '$password_sha')";
  18. mysql_query($zapytanie) or die("Wystąpił błąd" );
  19. echo('Konto '.$konto.' zostalo utworzone');
  20.  
  21. echo "<a href = '../index.php'>Przejdz do logowania</a>";
  22. }
  23. else
  24. {
  25. echo("Taki uzytkownik juz istnieje. Kliknij wstecz aby zarejestrowac sie ponownie");
  26. }
  27. }
  28.  
  29. else echo ("Podane hasla nie zgadzaja sie");
  30. echo "<a href = 'panel_rejestracji.php'>Wróc do rejestracji</a><br/>";
  31. }
  32. ?>


Go to the top of the page
+Quote Post
CuteOne
post 7.11.2012, 17:30:18
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


mysql_query("SELECT * FROM `uzytkownicy` WHERE login = '$konto' ") or die(mysql_error());

zobacz jaki błąd wywali


ps. po co hashujesz hasło skoro wrzucasz je również jako plaintext?

Ten post edytował CuteOne 7.11.2012, 17:31:40
Go to the top of the page
+Quote Post
rad11
post 7.11.2012, 17:37:11
Post #3





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

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


To samo sie wyświetla. To nie hashowac w takim wypadku? Wiesz ja na razie sobie tak testuje i probuje
Go to the top of the page
+Quote Post
CuteOne
post 7.11.2012, 17:44:35
Post #4





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


podmień
  1. $ile =mysql_query("SELECT * FROM `uzytkownicy` WHERE login = '$konto' ");
  2. $ile = mysql_num_rows($ile);


na
  1. $query =mysql_query("SELECT * FROM `uzytkownicy` WHERE login = '$konto' ") or die(mysql_error());
  2. var_dump($query);
  3. $ile = mysql_num_rows($query);


hashuj hasło i nie zapisuj go jako tekst jawny

Ten post edytował CuteOne 7.11.2012, 17:44:50
Go to the top of the page
+Quote Post
rad11
post 7.11.2012, 17:52:26
Post #5





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

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


Na poczatku taki błąd był

Unknown column 'login' in 'where clause' hmmmm no niby takiej kolumny nie ma w tabeli tylko jest uzytkownicy_login

Po zmianie na
  1. $ile =mysql_query("SELECT * FROM `uzytkownicy` WHERE uzytkownicy_login = '$konto' ");
  2. $ile = mysql_num_rows($ile);


Wyskakuje takie cos:

resource(5) of type (mysql result) Konto Radek zostalo utworzonePrzejdz do logowaniaWróc do rejestracji

I po probie wpisania ponownie takiego samego konta wyskoczylo

resource(5) of type (mysql result) Taki uzytkownik juz istnieje. Kliknij wstecz aby zarejestrowac sie ponownieWróc do rejestracji



Ten post edytował rad11 7.11.2012, 17:54:01
Go to the top of the page
+Quote Post
nospor
post 7.11.2012, 17:53:59
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Znaczy że teraz jest wszystko dobrze. Masz jeszcze jakiś problem?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
rad11
post 7.11.2012, 17:55:11
Post #7





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

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


No to w takim razie nie mam juz w tym problemu smile.gif Dzieki Cute daje plusika smile.gif
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 - 09:06