Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/03/2012, 04:25
mcg_4
 
Fecha de Ingreso: marzo-2012
Mensajes: 24
Antigüedad: 12 años, 10 meses
Puntos: 0
problema al registrar usuarios

Estoy intentando hacer un registro de usuario con PHP y parte del código consiste en validar que se rellenan en el formulario todos los campos obligatorios. Aunque los relleno, no soy capaz de ver porque me dice que faltan campos obligatorios por rellenar, así que os pega el trozo de código por si alguno veis donde puede estar el error.
Muchas gracias!
Código PHP:
<pre style="font-family:Arial, Helvetica, sans-serif;font-size:14px;color:#000; margin-left:40px;">Rellene los siguientes datos de registro:<br/>
                <?php
                session_start
();
                
//datos para establecer la conexion con la base de mysql.
                
mysql_connect('***','***','***')or die ('Ha fallado la conexión: '.mysql_error());
                
mysql_select_db('***')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
                function 
formRegistro(){
            
?>
            <form action="registrar.php" method="post" style="margin-top:-20px;">
            <table cellpadding="1px" cellspacing="2px">    
                 <tr>
                      <td width="350px"><label for="username"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Usuario*:</strong></font></label></td>
                      <td ><input type="text" id="username" name="username" value="" size="20" /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="password"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Contraseña*:</strong></font></label></td>
                      <td ><input type="password" id="password" name="password" value="" size="20" /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="password2"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Repetir contraseña*:</strong></font></label></td>
                      <td ><input type="password" id="password2" name="password" value="" size="20"/></td>
                 </tr>
                 <tr>
                      <td align="left" width="350px"><label for="nombre"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Persona de contacto*:</strong></font></label></td>
                      <td ><input type="text" id="nombre" name="nombre" value="" size="60"/></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="tlf"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Teléfono*:</strong></font></label></td>
                      <td ><input type="text" id="tlf" name="tlf" value="" size="15"/></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="email"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>E-mail*:</strong></font></label></td>
                      <td ><input type="text" id="email" name="email" value="" size="40" /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="empresa"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Empresa:</strong></font></label></td>
                      <td ><input type="text" id="empresa" name="empresa" value="" size="15"/></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="direccion"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Dirección:</strong></font></label></td>
                     <td ><input type="text" id="direccion" name="direccion" value="" size="60"/></td>
                 </tr>
                 <tr>
                      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif" color="#000000">*Campos obligatorios.</font></td>
                  </tr>
                 
                 <tr>
                     <td colspan="2">&nbsp;</td>
                 </tr>
                 <tr>
                     <td></td>
                      <td align="left"><input type="submit" name="enviar" id="enviar" value="Registrar" /><input type="reset" name="borrar" id="borrar" value="Restablecer" /></td>
                  </tr>
                  </table>
              </form>
<?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["username"])) {
    
$username $_POST["username"];
    
$password $_POST["password"];
    
$password2 $_POST["password2"];
    
$nombre =$_POST["nombre"];
    
$tlf $_POST["tlf"];
    
$email $_POST["email"];
    
$empresa $_POST["empresa"];
    
$direccion $_POST["direccion"];
    
// Hay campos en blanco
    
if($username==NULL|$password==NULL|$password2==NULL|$nombre==NULL|$tlf==NULL|$email==NULL) {
        echo 
"Algún campo obligatorio está vacio.";
        
formRegistro();
    }else{
        
// ¿Coinciden las contraseñas?
        
if($password!=$password2) {
            echo 
"Las contraseñas no coinciden";
            
formRegistro();
        }else{
            
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
            
$checkuser mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
            
$username_exist mysql_num_rows($checkuser);
            
$checkemail mysql_query("SELECT email FROM usuarios WHERE email='$email'");
            
$email_exist mysql_num_rows($checkemail);
            if (
$email_exist>0|$username_exist>0) {
                echo 
"El nombre de usuario o la cuenta de correo están ya en uso";
                
formRegistro();
            }else{
                
$query 'INSERT INTO usuarios (usuario, password, nombre, email, tlf, empresa, direccion, fecha)
                VALUES (\''
.$username.'\',\''.$password.'\',\''.$nombre.'\',\''.$email.'\',\''.$tlf.'\',\''.$empresa.'\',\''.$direccion.'\',\''.date("Y-m-d").'\')';
                
mysql_query($query) or die(mysql_error());
                echo 
'El usuario '.$username.' ha sido registrado de manera satisfactoria.<br />';
                echo 
'Ahora puede entrar ingresando su usuario y su password <br />';
                
?>
                  <form action="validar_usuario.php" method="post">
                <table cellpadding="1px" cellspacing="2px">
                 <tr>
                      <td width="50px"><label for="usuario"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Usuario:</strong></font></label></td>
                      <td ><input type="text" id="usuario" name="usuario" size="20" maxlength="20"/></td>
                 </tr>
                 <tr>
                     <td width="50px"><label for="pass"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Contraseña:</strong></font></label></td>
                      <td ><input type="password" id="password" name="password" size="20" maxlength="20"/></td>
                    </tr>
                 <tr>
                     <td colspan="2">&nbsp;</td>
                 </tr>
                 <tr>
                     <td></td>
                      <td align="left"><input type="submit" name="enviar" id="enviar" value="Ingresar" /></td>
                  </tr>
                  </table>
              </form>
                
                <?php
            
}
        }
    }
}else{
    
formRegistro();
}
?>          </pre>