Autor Zpráva
Nich
Profil
Zdravím všechny PHP majstry.... mám takovej malej poblém:

Mám formulář na registraci do databáze a potřebuju podmínkovej script, kterej mi echuje "blbala" když hodnota, která byla vyplněna ve formuláři už je uložená v databázi.

if (isset($_POST['auth_registr']))
{
       //Tady potřebuju vydolovat z DB všechny loginy co sou v ní uložený
       $login_SQL = "SELECT login FROM registrace";
       //Ověření zda zadaný login do formuláře už náhodou někdo nemá
        if ($login_SQL == $_POST[login])
			 {
			 echo "tento login už v databázi existuje, prosím zvolte si jiný";
			 }

}


Samozřejmě tento script nefunguje :-) nevíte někdo proč?
Taps
Profil
if (isset($_POST['auth_registr']))
{
       //Tady potřebuju vydolovat z DB všechny loginy co sou v ní uložený
$login1=$_POST['login'];
       $login_SQL = mysql_query("SELECT login FROM registrace where login='$login1'");
       //Ověření zda zadaný login do formuláře už náhodou někdo nemá
$dotaz=mysql_fetch_array($login_SQL);
        if ($dotaz['login'] == $_POST[login])
			 {
			 echo "tento login už v databázi existuje, prosím zvolte si jiný";
			 }

}


šárinka
Profil
takhle nemůžeš kontrolovat lgin toto ti zkontroluje jenom jeden řádek ne všechny řádky který máš uložený v mysql já osobně to kontroluju takhle

if (isset($_POST['auth_registr']))
{
       //Tady potřebuju vydolovat z DB všechny loginy co sou v ní uložený
       $login_SQL = "SELECT login FROM registrace WHERE login='".$_POST["login"]."'";
       //Ověření zda zadaný login do formuláře už náhodou někdo nemá
      if(MySQL_Num_Rows($login_SQL) != 0)
			 {
			 echo "tento login už v databázi existuje, prosím zvolte si jiný";
			 }

}


takhle to kontroluju já (možná sou tam chyby v uvozovkách psal jsem to nazpaměť kdyžtak si s tím pohrej ještě)
Ssob
Profil
šárinka
$login_SQL = "SELECT login FROM registrace WHERE login='".$_POST["login"]."'";
if(MySQL_Num_Rows($login_SQL) != 0)


To je špatně, Voláš fci MySQL_Num_Rows() na řetězec. Nejdříve musíš vydolovat data z databáze. Správně by to bylo tak:
if (isset($_POST['auth_registr']))
{
       //Tady potřebuju vydolovat z DB všechny loginy co sou v ní uložený
       $login_SQL = "SELECT login FROM registrace WHERE login='".$_POST["login"]."'";
       //Ověření zda zadaný login do formuláře už náhodou někdo nemá
      $query = mysql_query($login_SQL);
      if(MySQL_Num_Rows($query) != 0)
			 {
			 echo "tento login už v databázi existuje, prosím zvolte si jiný";
			 }

}


Já na kontrolování jestli je už užvatel v DB používám podobný způsob:
if (isset($_POST['auth_registr']))
{
       //Tady potřebuju vydolovat z DB všechny loginy co sou v ní uložený
       $login_SQL = "SELECT COUNT(*) FROM registrace WHERE login='".$_POST["login"]."'";
       if (mysql_result(mysql_query($login_SQL), 0))
			 {
			 echo "tento login už v databázi existuje, prosím zvolte si jiný";
			 }

}
Nich
Profil
Použil jsem všechny tyto odpovědi .... moc díky všem

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: