Un saludo bueno, tengo el siguiente problema resulta que en un form estoy tomando los valores del registro, usuario, password y mail.
Este es el código:
Código PHP:
<?php
include('conmysql.php');
mysql_connect($host, $user, $pwd) or system_error('ERROR: Can not connect to MySQL-Server');
mysql_select_db($db) or system_error('ERROR: Can not connect to database "'.$db.'"');
echo '
<div style="background-image:url(img/boxfacebook.png); background-repeat:no-repeat; width:579px; height:200px; margin:auto">
<form method="post" action=""><br><br><br><br>
Coloca un Usuario, apareceras con este nombre, trata de no utilizar Códigos Raros:<br>
<input type="text" name="username" /><br>
Contraseña:<br>
<input type="password" name="password" /><br>
Email (Para recuperar la Contraseña):<br>
<input type="text" name="elcorreo" /><br>
<input type="submit" name="submit" value="" style="background-image:url(img/create.png); width:78px; height:35px; border:none; background-color:transparent; cursor:pointer;" />
</form>
';
if(isset($_POST['submit'])){
$nickname = $_POST['username'];
$ecorreo = $_POST['elcorreo'];
$probar = mysql_query("SELECT * FROM ".PREFIX."user WHERE nickname = '$nickname' ");
while ($row=mysql_fetch_row($probar))
{
$nombre=$row[5];
$correo=$row[6];
}
if($_POST['username'] == '' && $_POST['password'] == '') {
echo "<p align='center'><font color='#FF0000' size='5'><b>Error: Completa todos los campos!</b></font><br><font color='#FF0000' size='3'><b>Espera 5 segundos para que refresque la página e intentar REGISTRARTE nuevamente</b></font></p></</div>";
echo '<meta http-equiv="Refresh" content="7; URL=test.php">';
}
if(mb_strlen(trim($nickname)) > 30 ) {
echo "<p align='center'><font color='#FF0000' size='5'><b>Error: El usuario supera el limite de 30 Caracteres</b></font><br><font color='#FF0000' size='3'><b>Espera 5 segundos para que refresque la página e intentar REGISTRARTE nuevamente</b></font></p></</div>";
echo '<meta http-equiv="Refresh" content="7; URL=test.php">';
}
if($correo == $ecorreo){
echo "<p align='center'><font color='#FF0000' size='5'><b>MAIL EN USO</b></font><br><font color='#FF0000' size='3'><b>Espera 5 segundos para que refresque la página e intentar REGISTRARTE nuevamente</b></font></p></</div>";
echo '<meta http-equiv="Refresh" content="7; URL=test.php">';
}
if($nickname == $nombre){
echo "<p align='center'><font color='#FF0000' size='5'><b>NICK EN USO</b></font><br><font color='#FF0000' size='3'><b>Espera 5 segundos para que refresque la página e intentar REGISTRARTE nuevamente</b></font></p></</div>";
echo '<meta http-equiv="Refresh" content="7; URL=test.php">';
}
else {
echo "good";
}
}
?>
El problema pasa cuando hace la comparación del Correo, este código es una simplificación, y el problema consiste cuando yo ingreso un correo repetido y la consulta lo analiza para que deba salir el mensaje de error si este es repetido, pero este se lo pasa por alto. En este código imprimirá "Good" si todo salio perfecto.
Mi registro funciona en la comparación de nombre cuando existe un usuario este muestra el mensaje de error de que ya existe uno y ahí para y refresca. También funciona cuando el nombre supera más de 30 caracteres, pero no funciona la comparación de email. ¿por que será?
Espero alguien me pueda brindar una ayuda estoy algo liado ya.