nomuchachos estan bien sus ejemplos pero .. :S presisamente eso e slo q eh hecho.. :S
el detalle esta en que al mismo tiempo no puede ser 0 por que cuando el ponga la direccion
register.php se tiene q seguir registrando de todas formas.. :S
es decir si es 0 pues prosige.. y si es mayor que 0 .(que son todos los id... pue slo verifica que exista si existe prosige si no existe no prosige.. :S .. eso e slo que quiero lograr..
aunq ahora para salvarme,... eh creado otro archivo para el registro que se encuentra en otra carpeta q s ellama referrer.. entoncs bueno trato los casos por separado.. :)
cuando se vana registar por la pagina es por register.php .. hay no sucede nada y el ref es 0 .
y cuando se van a regsitrar por un referido el linck seria
misitio.com/referrer/?r=ID_DEL_REFERIDOR
crey que ocn esto me slavava de complicarme con los if.. pero resulta que no. =( aun asi .. me sigue registrando al usuario asi el id no exista.. :S
aqui esta el codigo:
Código PHP:
<?
include ('../seg/conexion.php');
//funcion para comprobar un mail
function comprobar_mail($mail)
{
if (!ereg("^([a-zA-Z0-9._]+)@([a-zA-Z0-9.-]+).([a-zA-Z]{2,4})$",$mail)){
return FALSE;
} else {
return TRUE;
}
}
// Preguntaremos si se han enviado ya las variables necesarias
if (isset($_POST["nombre"])) {
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$ref = $_POST["ref"];
$estado = 1;
$pass = $_POST["password"];
$cpassword = $_POST["cpassword"];
$sc = $_POST["sc"];
$sexo = $_POST["sexo"];
$dia = $_POST["dia"];
$mes = $_POST["mes"];
$anno = $_POST["anno"];
$fn =$anno."-".$mes."-".$dia;
$link =$_POST["link"];
$pais = $_POST["pais"];
$fecha=date("Y-m-d");
$ip=$_SERVER["REMOTE_ADDR"];
$sc2=base64_encode("$sc");
$nombre2=base64_encode("$nombre");
$mail2 = "[email protected]";
// Hay campos en blanco
if(empty($nombre) | empty($pass) | empty($sc) | empty($sexo) | empty($link) | empty($dia) | empty($mes) | empty($anno) | empty($pais) | empty($cpassword) | empty($email)) {
echo "<script type=\"text/javascript\">alert(\"Un Campo Esta Vacio\"); window.history.back();</script>";
}else{
// ¿Coinciden las contraseñas?
if($pass!=$cpassword) {
echo "<script type=\"text/javascript\">alert(\"Las Contraseñas no coinciden\"); window.history.back();</script>";
}else{
// si el id es correcto..*********AQUI
$checkref = mysql_query("SELECT id FROM usuarios WHERE estado!='$estado'");
$ref_exist = mysql_num_rows($checkref);
if ($ref_exist>0) {
$checkemail = mysql_query("SELECT email FROM usuarios WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0) {
echo "<script type=\"text/javascript\">alert(\"Este email ya esta siendo utilizado, intenta con otro.\");window.history.back();</script>";
}else{
$checknombre = mysql_query("SELECT nombre FROM usuarios WHERE nombre='$nombre'");
$nombre_exist = mysql_num_rows($checknombre);
if ($nombre_exist>0) {
echo "<script type=\"text/javascript\">alert(\"Este usuario ya existe en nuestra base de datos!.\"); window.history.back();</script>";}else{
if(comprobar_mail($email))
{/*Si la función devuelve TRUE, o sea que si está correcto muestro un mensaje o lo que quiera mostrar*/
//Todo parece correcto procedemos con la inserccion
$query = "INSERT INTO usuarios (nombre, pass, sc, pais, sexo, fn, link, email, fecha, ip, ref) VALUES('$nombre','$pass','$sc','$pais','$sexo','$fn','$link','$email','$fecha' ,'$ip','$ref')";
mysql_query($query) or die(mysql_error());
$header = 'From: ' . $mail2 . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje = "Bienvenido(a) " . $nombre . ", al Banco de Comercio, 'Bancomer' El Banco mas grande de Erepublik \r\n";
$mensaje .="\r\n";
$mensaje .="Tu Datos son los siguientes:\r\n";
$mensaje .="\r\n";
$mensaje .="Nombre: ".$nombre."\r\n";
$mensaje .="\r\n";
$mensaje .="Clave de Acceso: ".$pass." utilizala para entrar a tu cuenta en el Banco de Comercio\r\n";
$mensaje .="\r\n";
$mensaje .="Clave de Seguridad: ".$sc." Se te solicitara para algunos movimientos como medida de seguridad.\r\n";
$mensaje .="\r\n";
$mensaje .="Sexo: ".$sexo."\r\n";
$mensaje .="\r\n";
$mensaje .= " Para Comprobar que este es tu email y Activar Tu Cuenta haz clic aqui: \r\n";
$mensaje .= "\r\n";
$mensaje .= "http://misitio/es/comprob.php?78363hysksldidud76eh9=$nombre2&b65478ib23=$sc2&B1=Enviar\r\n";
$mensaje .= "\r\n";
$mensaje .="Saludos.\r\n";
$mensaje .="\r\n";
$mensaje .="-Banco de Comercio exclusivo para el juego online Erepublik\r\n";
$mensaje .="http://misitio/es/";
$asunto = 'Bienvenido(a) al Banco de Comercio';
mail($email, $asunto, utf8_decode($mensaje), $header);
echo '<script languaje="JavaScript">
var varjs="'.$nombre.' haz sido registrado(a) en Banco de Comercio. Desde ahora podras acceder a tu cuenta una vez hayas comprobado tu email pulsando en el link que se te ha enviado. En unos segundos recibirás un mensaje con tus datos, al correo '.$email.' Revisa tu bandeja de correo electrónico no deseado. (Se te recomienda marcarlo como correo seguro o deseado.)";
alert(varjs); window.close();
</script>';
;
}else
{
echo "<script type=\"text/javascript\">alert(\"Email Mal Escrito o inecistente.\"); window.history.back();</script>";
}
}
}
/AQUIIIIIIIIIIIIIIII
}else{echo "<script type=\"text/javascript\">alert(\"El link que estas usando para registrarte esta incorrecto, seras redirigido a la pagina ofccial. ");window.history.back();</script>";
}
}
}
?>
la parte del where estado!=$estado (donde estado=1) es por que los usuarios que tengan estado 1 son baneados.. entonces pro eos no se les toma en cuenta..
espero hayan entendido bien el codigo.. :S ahora le problma que me da es que me registra el usuario de igual forma.. :S aunq le ponga un id erroneo.. :S
:)
MIllan2525 no entiendo muy bien tu codigo. .:S ..