[Resolvido] Cadastro Duplicado
Olá amigos,estou com um problema no meu código , eu tentei fazer um codigo que impedia a pessoa de criar 2 contas com msm usuario , mas nao deu certo e quando a pessoa faz o cadastro aparece duas contas iguais no BD .
Segue abaixo o código
>
<?php
ob_start();
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
// inserir cadastro inicio
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
//evitar cadastro duplicado
$insertSQL = mysql_query("SELECT * FROM usuario WHERE usuario = '".$_POST['usuario']."'");
if(mysql_num_rows($insertSQL)>=1){
echo "<meta http-equiv='refresh' content='0;URL=cadastro_usu.php'>
<script type=\"text/javascript\">
alert(\"Este nome de usuário ja esta cadastrado!\");
</script>";
}
else
{
$insertSQL = sprintf("INSERT INTO usuario (usuario, email, senha, assinatura) VALUES (%s, %s, %s, %s)",
GetSQLValueString($_POST['usuario'], "text"),
GetSQLValueString($_POST['email'], "text"),
GetSQLValueString($_POST['senha'], "text"),
GetSQLValueString(isset($_POST['assinatura']) ? "true" : "", "defined","'Y'","'N'"));
mysql_select_db($database_f, $f);
$Result1 = mysql_query($insertSQL, $f) or die(mysql_error());
$insertGoTo="logar.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
}
//inserir cadastro final
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO usuario (usuario, email, senha, assinatura) VALUES (%s, %s, %s, %s)",
GetSQLValueString($_POST['usuario'], "text"),
GetSQLValueString($_POST['email'], "text"),
GetSQLValueString($_POST['senha'], "text"),
GetSQLValueString(isset($_POST['assinatura']) ? "true" : "", "defined","'Y'","'N'"));
mysql_select_db($database_f, $f);
$Result1 = mysql_query($insertSQL, $f) or die(mysql_error());
}
mysql_select_db($database_f, $f);
$query_usuario = "SELECT * FROM usuario";
$usuario = mysql_query($query_usuario, $f) or die(mysql_error());
$row_usuario = mysql_fetch_assoc($usuario);
$totalRows_usuario = mysql_num_rows($usuario);
?>
Espero que possam me ajudar .
Discussão (17)
Carregando comentários...