Kezdőoldal » Számítástechnika » Weblapkészítés » Regisztráció modult le védtem,...

Regisztráció modult le védtem, de mégis hozzá adja a táblához a regisztráltat, miért?

Figyelt kérdés
kommentben a kód illetve e probléma

2014. jan. 1. 20:32
 1/2 A kérdező kommentje:

/* Regisztráció feldolgozó */

if (isset($_GET['register']))

{

if (isset($_POST['Reg_username']) && isset($_POST['Reg_password']) && isset($_POST['Reg_Email']))

{

echo '<br /><br /><table border="0" align="center" cellpadding="3" cellspacing="0" class="uzenet"><tr><td align="center"><img src="image/exclamationsign.gif" width="40" height="33"></td><td>Sikertelen regisztráció!!!</td></tr></table><br /><br />';

if (empty($_POST['Reg_fullname'])) $_POST['Reg_fullname'] = 'Ismeretlen';

$query = @mysql_query("SELECT * FROM `Users_login` WHERE `Username` = '".mysql_real_escape_string($_POST['Reg_username'])."'");

$row = mysql_fetch_array($query);

@mysql_free_result($query);

if (!empty($row['Id']))

{

echo "<font color=red><b>Már regisztrált név.</b></font><br />";

}

if (empty($_POST['Reg_username']))

{

echo "<font color=red><b>Add meg a felhasználóneved!</b></font><br />";

}

if (empty($_POST['Reg_fullname'])) $_POST['Reg_fullname'] = 'Ismeretlen';

$query = @mysql_query("SELECT * FROM `Users_login` WHERE `Email` = '".mysql_real_escape_string($_POST['Reg_Email'])."'");

$row = mysql_fetch_array($query);

@mysql_free_result($query);

if (!empty($row['Id']))

{

echo "<font color=red><b>Már regisztrált Email cím!</b></font><br />";

}

if (empty($_POST['Reg_Email']))

{

echo "<font color=red><b>Add meg az E-mail címed!</b></font><br />";

}

if (empty($_POST['Reg_password']))

{

echo "<font color=red><b>Adj meg egy jelszót!</b></font><br />";

}

if (empty($_POST['Reg_fullname']))

{

echo "<font color=red><b>Add meg a neved, hogy az üzenetekben ezen a neven szólitsunk meg!</b></font><br />";

}

if (empty($_POST['Reg_irszam']))

{

echo "<font color=red><b>Add meg az írányitószámodat! Ha külföldön élsz akkor írd be, hogy:0000!</b></font><br />";

}

if (empty($_POST['Reg_telepules']))

{

echo "<font color=red><b>Add meg a települést, az írányitószám nem mindig mutat pontos helységet, ha Budapesten élsz add meg a kerület számát!</b></font><br />";

}

if ($_POST['Reg_age'] < 13)

{

echo "<font color=red><b>13 év alatt nem Regisztrálhatsz!</b></font><br />";

}

if (empty($_POST['Reg_age']))

{

echo "<font color=red><b>Add meg az évkorod!</b></font><br />";

}

if (empty($_POST['Reg_adatvedelem']))

{

echo "<font color=red><b>Fogadd el a szabályzatot!</b></font><br />";

}

else

{

@mysql_query("INSERT INTO `Users_login` (`Username`, `Password`, `honlap`, `Email`, `Fullname`, `irszam`, `telepules`, `age`, `adatvedelem`, `comment`, `regisztralt`) VALUES ('".mysql_real_escape_string($_POST['Reg_username'])."', '".sha1(md5($_POST['Reg_password']))."', '".mysql_real_escape_string($_POST['Reg_honlap'])."', '".mysql_real_escape_string($_POST['Reg_Email'])."', '".mysql_real_escape_string($_POST['Reg_fullname'])."', '".mysql_real_escape_string($_POST['Reg_irszam'])."', '".mysql_real_escape_string($_POST['Reg_telepules'])."', '".mysql_real_escape_string($_POST['Reg_age'])."', '".mysql_real_escape_string($_POST['Reg_adatvedelem'])."', '".mysql_real_escape_string($_POST['Reg_comment'])."', NOW() )");

echo "<b>Regisztráltál! Lépj be:</b>";

}

}

else

{

require_once ('register.php'); // Regisztráló űrlap

}

}

###

Ez a regisztrációs űrlap feldolgozója. A probléma az, hogy ha kitölti az összeset, viszont egy létező Felhasználónevet add meg akkor ki írja, hogy sikertelen de mégis hozzáadja a táblához! Mi itt a baj?

+ még egy kérdés: Azt, hogy lehet if operátorba tenni, hogy csak számot fogadjon el, vagyis ebben az eseten az, hogyha nem szám akkor írja ki: írányitószám csak számokból állhat!

Köszönöm a segítséget!

2014. jan. 1. 20:36
 2/2 uno20001 ***** válasza:

Például ezzel megoldhatod:


$query = "SELECT * FROM tablaneve WHERE felhasznalonev=".$felhasznalonev;

$result = mysql_query($query);

if(mysql_num_rows($result) !=0){

echo("A felhasználónév foglalt!");

}else{

//Folytatódhat a feldolgozás...

}

2014. jan. 1. 22:04
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!