Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Dlaczego nie działa sprawdzanie ?
Forum PHP.pl > Forum > Przedszkole
Ravik
Witam,

Napisałem sobie skrypt rejestracji i nie wiem czemu nie sprawdza czy email istnieje w bazie danych.
Tzn. jeżeli istnieje już użytkownik o takim samym emailu to skrypt zamiast wywalić komunikat że jest już taki w bazie to rejestruje.
Natomiast skrypt poprawnie sprawdza czy istnieje już użytkownik o takim samym loginie i poprawnie wywala blad.
Proszę o pomoc.

  1. <?php
  2.  
  3. $dbhost = &#092;"\";
  4. $dbname = &#092;"\";
  5. $dbuser = &#092;"\";
  6. $dbpass = &#092;"\";
  7.  
  8.  
  9. mysql_connect ( $dbhost, $dbuser, $dbpass)or die(&#092;"Blad polaczenia: \".mysql_error());
  10.  
  11. if (isset($_POST['submit'])) {
  12.  
  13. $nick = $_POST['nick'];
  14. $email = $_POST['email'];    
  15. $gadu = $_POST['gadu'];
  16. $password = md5($_POST['password']);
  17. $passwordr = md5($_POST['passwordr']);
  18.  
  19. }
  20.  
  21. // jezeli jest user o takim samym nicku
  22.  
  23. $checkuser = mysql_query(&#092;"SELECT nick FROM users WHERE nick = '$nick'\");
  24.  
  25. $nick_exist = mysql_num_rows($checkuser);
  26.  
  27. if($nick_exist > 0) {
  28.    echo &#092;"Istnieje juz taki user!\";
  29.    unset($nick);
  30.    include 'login.html';
  31.    exit();
  32. }
  33.  
  34. // jezeli istnieje email
  35.  
  36. $checkemail = mysql_query(&#092;"SELECT email FROM users WHERE email = '$email'\");
  37.  
  38. $email_exist = mysql_num_rows($checkmail);
  39.  
  40. if($email_exist > 0) {
  41.    echo &#092;"Ten email jest juz w naszej bazie. Zaloguj sie.\";
  42.    unset($email);
  43.    include 'rejestracja.html';
  44.    exit();
  45. } else {
  46.  
  47. // dodanie do bazy jezeli nie ma bledu
  48.  
  49. $query = &#092;"INSERT INTO users (nick, password, email, gg)
  50. VALUES('$nick', '$password', '$email', '$gadu')&#092;";
  51. mysql_query($query) or die(mysql_error());
  52.  
  53. echo &#092;"Zostales zarejestrowany.\";
  54.    
  55. }
  56.  
  57. ?>
erix
Chyba pomieszałeś pola przy SELECT.
Pilsener
A testujesz etapami swoją pracę, czy tak z palca piszesz? winksmiley.jpg

  1. <?php
  2. $checkemail = ;
  3. = $checkmail;
  4. ?>
- echuj zmienne, dopiero gdy jest ok usuwaj te linie kodu no i zainwestuj w jakiś porządny edytor, który pozwala śledzić zmienne, liczyć klamry etc.
Ravik
OMFG, jestem ślepy albo nie widomy.
Edytora używam dobrego jak dla mnie (kwrite), a na windowsie notepad2.
Zazwyczaj testuję swoją pracę po każdym etapie.

W każdym razie dzięki za pomoc.

Pozdrawiam,
Ravik
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.