Регистрация проблем

Martowe

Registered
Като дам на регистрация и като дам рефреш на страницата колкото и да бъде пъти си прави регистрация без да попълвам нищо ?


това е кода


Код:
<? 
if (eregi("modules/register/index.php", $_SERVER['SCRIPT_NAME'])) { die ("Access Denied"); }
?><b>
<?php 

if($_POST['submit']){ 
$sql = "INSERT INTO `users` (`name`, `username`, `password`, `email`, `snimka`, `uploads`, `skype`) VALUES ('$_POST[rname]', '$_POST[uname]', '$_POST[upass]', '$_POST[email]', '', '0', '$_POST[skype]');"; 
$result = mysql_query($sql) or die(mysql_error());
echo "Your register is sucessfull!<br><br>";   
}
?> 

<form id="form2" name="form2" method="post" action=""> 
<table width="250" border="0"  cellpadding="1" cellspacing="1" id="table"> 
<tr> 
<td>Èìå:</td> 
<td><strong>:</strong></td> 
<td align="center"><input name="rname" type="text" class="txt" id="rname" size="30" /></td> 
</tr> 
<tr> 
<td align="left">Ïîòðåáèòåë:</td> 
<td align="center"><strong>:</strong></td> 
<td align="center"><input name="uname" type="text" class="txt" id="uname" size="30"></td> 
</tr> 
<tr> 
<td align="left">Ïàðîëà:</td> 
<td align="center"><strong>:</strong></td> 
<td align="center"><input name="upass" type="password" class="txt" id="upass" size="30"></td> 
</tr> 
<tr> 
<td align="left">Email</td> 
<td align="center"><strong>:</strong></td> 
<td align="center"><input name="email" type="text" class="txt" id="email" size="30" /></td> 
</tr> 
<tr> 
<td align="left">Skype</td> 
<td align="center"><strong>:</strong></td> 
<td align="center"><input name="skype" type="text" class="txt" id="skype" size="30" /></td> 
</tr> 
<tr> 
<td colspan="3" align="center"><input name="submit" type="submit" class="btn" id="button" value="Èçïðàòè!" /> 
<input name="button2" type="reset" class="btn" value="Èçòðèè" /></td> 
</tr> 
</table> 
</form> </b>
 
Код:
if($_POST['submit']){ 
$sql = "INSERT INTO `users` (`name`, `username`, `password`, `email`, `snimka`, `uploads`, `skype`) VALUES ('$_POST[rname]', '$_POST[uname]', '$_POST[upass]', '$_POST[email]', '', '0', '$_POST[skype]');"; 
$result = mysql_query($sql) or die(mysql_error());
echo "Your register is sucessfull!<br><br>";
}
ми щото практически всеки път който рефрешнеш страницата се субмитва, ти що не си направил никаква проверка на полетата? дали са празни, дали отговарят на изискванията...
 
Liberate каза:
Код:
if($_POST['submit']){ 
$sql = "INSERT INTO `users` (`name`, `username`, `password`, `email`, `snimka`, `uploads`, `skype`) VALUES ('$_POST[rname]', '$_POST[uname]', '$_POST[upass]', '$_POST[email]', '', '0', '$_POST[skype]');"; 
$result = mysql_query($sql) or die(mysql_error());
echo "Your register is sucessfull!<br><br>";
}
ми щото практически всеки път който рефрешнеш страницата се субмитва, ти що не си направил никаква проверка на полетата? дали са празни, дали отговарят на изискванията...


Пак е така смисъл давам регистрация ми изписва "Your register is sucessfull!" и давам рефреш и си прави пак регистрации
 
Направил съм го така, че след регистрацията да трябва да се изчака 10 секунди преди да се регистрира пак, иначе излиза съобщение за грешка :)

Код:
 <?
if (eregi("modules/register/index.php", $_SERVER['SCRIPT_NAME'])) { die ("Access Denied"); }
?><b>
<?php

if(isset($_POST['submit'])){
setcookie('refresh', '1', time()+10);
if (!$_COOKI['refresh'])
{
echo 'Трябва да изчакате 10 секунди преди да се пробвате да се регистрирате пак !';
}
else
{
$sql = "INSERT INTO `users` (`name`, `username`, `password`, `email`, `snimka`, `uploads`, `skype`) VALUES ('$_POST[rname]', '$_POST[uname]', '$_POST[upass]', '$_POST[email]', '', '0', '$_POST[skype]');";
$result = mysql_query($sql) or die(mysql_error());
echo "Your register is sucessfull!<br><br>";   
}
}
else
{
echo '

<form id="form2" name="form2" method="post" action="">
<table width="250" border="0"  cellpadding="1" cellspacing="1" id="table">
<tr>
<td>Eia:</td>
<td><strong>:</strong></td>
<td align="center"><input name="rname" type="text" class="txt" id="rname" size="30" /></td>
</tr>
<tr>
<td align="left">Iio?aaeoae:</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="uname" type="text" class="txt" id="uname" size="30"></td>
</tr>
<tr>
<td align="left">Ia?iea:</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="upass" type="password" class="txt" id="upass" size="30"></td>
</tr>
<tr>
<td align="left">Email</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="email" type="text" class="txt" id="email" size="30" /></td>
</tr>
<tr>
<td align="left">Skype</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="skype" type="text" class="txt" id="skype" size="30" /></td>
</tr>
<tr>
<td colspan="3" align="center"><input name="submit" type="submit" class="btn" id="button" value="Eci?aoe!" />
<input name="button2" type="reset" class="btn" value="Eco?ee" /></td>
</tr>
</table>
</form> </b>';
}
?>
 
Код:
<?php
if (eregi("modules/register/index.php", $_SERVER['SCRIPT_NAME'])) { die ("Access Denied"); }
?>
<b>
<?php

if($_POST['submit'])
{
	$username = $_POST['uname'];
	$sql = "SELECT * FROM users WHERE username='$username' OR email='$_POST[email]'";
	$res = mysql_query($sql);
	$num = mysql_fetch_assoc($res);
	
	if($num >0)
	{
		echo"Има такъв потребител, ili email!";
	
	}
	else
	{	
		if($_POST['uname']!=NULL||$_POST['email']!=NULL)
		{
			$sql = "INSERT INTO `users` (`name`, `username`, `password`, `email`, `snimka`, `uploads`, `skype`) VALUES ('$_POST[rname]', '$_POST[uname]', '$_POST[upass]', '$_POST[email]', '', '0', '$_POST[skype]');";
			$result = mysql_query($sql) or die(mysql_error());
			echo "Your register is sucessfull!<br><br>";   
		}
		else
		{
			echo"Не сте попълнили всички полета с *!";
		
		}
	}
	
}
else
{
?>

<form id="form2" name="form2" method="post" action="">
<table width="250" border="0"  cellpadding="1" cellspacing="1" id="table">
<tr>
<td>Eia:</td>
<td><strong>:</strong></td>
<td align="center"><input name="rname" type="text" class="txt" id="rname" size="30" /></td>
</tr>
<tr>
<td align="left">Iio?aaeoae:*</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="uname" type="text" class="txt" id="uname" size="30"></td>
</tr>
<tr>
<td align="left">Ia?iea:</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="upass" type="password" class="txt" id="upass" size="30"></td>
</tr>
<tr>
<td align="left">Email*</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="email" type="text" class="txt" id="email" size="30" /></td>
</tr>
<tr>
<td align="left">Skype</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="skype" type="text" class="txt" id="skype" size="30" /></td>
</tr>
<tr>
<td colspan="3" align="center"><input name="submit" type="submit" class="btn" id="button" value="Eci?aoe!" />
<input name="button2" type="reset" class="btn" value="Eco?ee" /></td>
</tr>
</table>
</form> </b>	
<?php
}
?>




И си до оправи проверките!
 
justspy каза:
Направил съм го така, че след регистрацията да трябва да се изчака 10 секунди преди да се регистрира пак, иначе излиза съобщение за грешка :)

Код:
 <?
if (eregi("modules/register/index.php", $_SERVER['SCRIPT_NAME'])) { die ("Access Denied"); }
?><b>
<?php

if(isset($_POST['submit'])){
setcookie('refresh', '1', time()+10);
if (!$_COOKI['refresh'])
{
echo 'Трябва да изчакате 10 секунди преди да се пробвате да се регистрирате пак !';
}
else
{
$sql = "INSERT INTO `users` (`name`, `username`, `password`, `email`, `snimka`, `uploads`, `skype`) VALUES ('$_POST[rname]', '$_POST[uname]', '$_POST[upass]', '$_POST[email]', '', '0', '$_POST[skype]');";
$result = mysql_query($sql) or die(mysql_error());
echo "Your register is sucessfull!<br><br>";   
}
}
else
{
echo '

<form id="form2" name="form2" method="post" action="">
<table width="250" border="0"  cellpadding="1" cellspacing="1" id="table">
<tr>
<td>Eia:</td>
<td><strong>:</strong></td>
<td align="center"><input name="rname" type="text" class="txt" id="rname" size="30" /></td>
</tr>
<tr>
<td align="left">Iio?aaeoae:</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="uname" type="text" class="txt" id="uname" size="30"></td>
</tr>
<tr>
<td align="left">Ia?iea:</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="upass" type="password" class="txt" id="upass" size="30"></td>
</tr>
<tr>
<td align="left">Email</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="email" type="text" class="txt" id="email" size="30" /></td>
</tr>
<tr>
<td align="left">Skype</td>
<td align="center"><strong>:</strong></td>
<td align="center"><input name="skype" type="text" class="txt" id="skype" size="30" /></td>
</tr>
<tr>
<td colspan="3" align="center"><input name="submit" type="submit" class="btn" id="button" value="Eci?aoe!" />
<input name="button2" type="reset" class="btn" value="Eco?ee" /></td>
</tr>
</table>
</form> </b>';
}
?>



Код:
Warning: Cannot modify header information - headers already sent by (output started at www\index.php:8) in www\modules\register\index.php on line 7
?????? ?? ???????? 10 ??????? ????? ?? ?? ???????? ?? ?? ???????????? ??? !
 
сложи едно
<? ob_start(); ?> най отгоре на кода, над всичко.. не трябва да оставяш празно място, слагаш го на първия ред !
 

Back
Горе