Registrace Vyřešeno

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

smoukicek
nováček
Příspěvky: 33
Registrován: leden 14
Pohlaví: Muž
Stav:
Offline
Kontakt:

Registrace  Vyřešeno

Příspěvekod smoukicek » 09 črc 2014 16:56

Zdravím,

mám problém. Tvořím si web, tím se i učím PHP. No mám registraci uživatelů. Vše funguje. Ale když mám ověření, zda náhodou neexistuje přezdívka, kterou chce nový uživatel, tak mi to správně vyhodí hlášku, že tato přezdívka existuje. To je OK, tak to chci. Nic méně, když provádím stejnou kontrolu u emailu, tak si můžu zadat stejný email a stejně mě to toho uživatele zaregistruje. Nevíte kde je chyba? Přikládám zdrojáky:

Ověření přezdívky:

Kód: Vybrat vše

$dotaz2=mysql_query("SELECT * FROM users");
$overeni1=mysql_fetch_array($dotaz2);

if ($overeni1['username']!==$nick)


Ověření emailu:

Kód: Vybrat vše

$dotaz2=mysql_query("SELECT * FROM users");
$overeni1=mysql_fetch_array($dotaz2);

if ($overeni1['email']!==$e_mail)




Celý script registrace na web:

Kód: Vybrat vše

require_once("funkce.php");
nacti_db();
chat_db();
header("Content-Type: text/html; charset=utf-8");
$pismeno=array("a","A","b","B","c","C","d","D","e","E","f","F","g","G","h","H","i","I","j","J","k","K","l","L","m","M","n","N","o","O","p","P","q","Q","r","R","s","S","t","T","u","U","v","V","w","W","x","X","y","Y","z","Y");
   
   $kod=array();
      
      for($i=1; $i<20; $i++){
         $n=rand(0,50);
         $char=$pismeno[$n];
         $kod[$i]=$char;
         $cislo=rand(0,9);
         $kod[$i].=$cislo;   
      }
      $akod=implode($kod);

$dotaz=mysql_query("SELECT * FROM users where username='".$_POST['nick']."' AND email='".$_POST['email']."'");
mb_internal_encoding("UTF-8");
$heslo1=mysql_real_escape_string($_POST['heslo']);
$heslo2=mysql_real_escape_string($_POST['heslo2']);
$nick=mysql_real_escape_string($_POST['nick']);
$e_mail=mysql_real_escape_string($_POST['email']);
$jmeno=mysql_real_escape_string($_POST['jmeno']);
$prijmeni=mysql_real_escape_string($_POST['prijmeni']);
$adresa="smoukey@m1p.eu";
$predmet="Registrace nového uživatele";
$text="Uživatel: ".$nick." se právě zaregistroval na web.<br/>";
$text.="Jméno uživatele: ".$jmeno."<br />";
$text.="Příjmení: ".$prijmeni."<br />";
$text.="Email: ".$e_mail."";
$hlavicka= 'From: Lorem-ipsum.bot';
$hlavicka2= 'From: admin';
$hlavicka.= "\nMIME-Version: 1.0\n";
$hlavicka.= "Content-Type: text/html; charset=\"utf-8\"\n";
$hlavicka2.= "\nMIME-Version: 1.0\n";
$hlavicka2.= "Content-Type: text/html; charset=\"utf-8\"\n";
$ip=$_SERVER['REMOTE_ADDR'];
$zprava="Dobrý den, <br /> děkuji za registraci ne mém webu. Ještě než se budete moci přihlásit, musíte svůj účet aktivovat.";
$zprava.="<br /><br /> <br />";
$zprava.="Váš aktivační kód je:".$akod." <br />";




$dotaz2=mysql_query("SELECT * FROM users");
$overeni1=mysql_fetch_array($dotaz2);

if ($overeni1['username']!==$nick){
   if ($overeni1['email']!==$e_mail){
      if ($heslo1 == $heslo2){
         if ($nick AND $e_mail){
            $heslo=md5($heslo1);
            mysql_query("INSERT INTO users VALUES (null,'".$nick."','".$heslo."','".$e_mail."','".$jmeno."','".$prijmeni."','".$ip."','".time()."','0', '0', '".$akod."')");
            mb_send_mail($adresa, $predmet, $text, $hlavicka);
            mb_send_mail($e_mail, "Aktivace uživatelského účtu", $zprava, $hlavicka2);
            echo("<script language='JavaScript'>
                  <!--                  
                  window.alert('Byl jste úspěšně zaregistrován');
                  window.location.href='index.php'
                  // -->
                  </Script>");
         }
         else
         echo '<script>alert("Nevyplnili jste uživ. jméno nebo email");history.back();</script>';
      }
      else
      echo '<script>alert("Zadaná hesla se neshodují");history.back();</script>';
      
   }
   else
      echo '<script>alert("Uživatel s tímto emailem již existuje! Zadejte prosím jiný email, nebo si obnovte zapomenuté heslo."); history.back();</script>';
   }
   else
      echo '<script>alert("Uživatel s tímto uživatelským jménem již existuje! Zadejte prosím jiné uživatelské jméno, nebo si obnovte zapomenuté heslo."); history.back();</script>';



Předem děkuji za odpovědi a pomoc :-)

Reklama
Uživatelský avatar
domitea
Tvůrce článků
Level 4.5
Level 4.5
Příspěvky: 1971
Registrován: červen 09
Bydliště: Královehradecký kraj
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Registrace

Příspěvekod domitea » 09 črc 2014 18:05

Co takhle udělat selecty s where? Pokud by pak existoval záznam, uživatel už existuje. Pokud ne, můžeš registrovat :wink:

smoukicek
nováček
Příspěvky: 33
Registrován: leden 14
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Registrace

Příspěvekod smoukicek » 10 črc 2014 10:22

I tak jsem to vyřešil a celkově script předělal. Děkuji.


Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 9 hostů