Foros del Web » Programando para Internet » PHP »

Duda con registro

Estas en el tema de Duda con registro en el foro de PHP en Foros del Web. Ok. a ver tengo un sistema de registro de usuarios simple que no me esta funcionando. Al guardar el registro tengo una parte que valida ...
  #1 (permalink)  
Antiguo 23/05/2008, 21:24
Avatar de uokesita  
Fecha de Ingreso: enero-2008
Ubicación: Maracaibo
Mensajes: 214
Antigüedad: 16 años, 3 meses
Puntos: 17
Duda con registro

Ok. a ver tengo un sistema de registro de usuarios simple que no me esta funcionando. Al guardar el registro tengo una parte que valida si el usuario dejo algun campo en blanco y si fue asi le da una advertencia y no registra nada..


Este es el formualrio

Código HTML:
<form enctype="multipart/form-data" action="guardar_registro.php" method="post" > 
Nombre o Nick:
<input type="text" name="userName" size="30" /><br /><br />
Contraseña:
<input type="password" name="userPass" size="30" /><br />
Repite la Contraseña:
<input type="password" name="userPass2" size="30" /><br />
Email: 
<input type="text" name="userMail" id="userMail" /><br />
<input type="submit" value="Enviar perfil">
</form> 

luego este es el archivo que lo guarda

Código PHP:
<? 

 
if (!$userName || !$userPass || !$userPass2 || !$userMail )
  {
     echo 
"No has introducido todos los detalles requeridos.<br>"
          
."Por favor vuelve e intentalo de nuevo.";
     exit;
  }

if (
$userPass != $userPass2)
    {
    echo 
"Las contraseñas no coinciden. Por favor vuelve e intentalo de nuevo.";
    exit;
    }
    
    

require(
"dbconnect.inc.php");

  
$userPass addslashes($userPass);
  
$userMail addslashes($userMail);
  
$userName addslashes($userName);
  



  
$recoge "select * from usuario ORDER BY UserId DESC";
  
  
$muestra mysql_query($recoge);

  
$num_muestras mysql_num_rows($muestra);
  
  
$row mysql_fetch_array($muestra);
  
  
  
if (
$userName==($row["userName"]))
  
 echo 
"Error, Nombre o Nick ya fue escogido por otro usuario <br /> Por favor, intenta con otro.";

else
{


$qry "INSERT INTO usuario VALUES
('$userName','$userPass','$userMail')"
;

}


mysql_query($qry);
if(
mysql_affected_rows($conn) > 0)
print 
"Se ha registrado tu perfil en la base de datos.";
else
print 
"NO se ha podido registrar tu perfil en la base de datos.";



?>


Ahora, el problema es que aunque lleno el formulario correctamente, al querer guardarlo me sale el aviso de que deje campos en blanco.....

Alguien me ayuda a saber que pasa? Donde tengo el error?
  #2 (permalink)  
Antiguo 23/05/2008, 21:48
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Duda con registro

Hola uokesita,

Probablemente necesites usar las variables globales de $_POST en lugar de usar simplemente la variable.

Te recomiendo que en lugar de usar por ejemplo $userName uses $_POST['userName'] y asi por todas las variables que quieras usar.

Saludos.
  #3 (permalink)  
Antiguo 23/05/2008, 21:52
Avatar de uokesita  
Fecha de Ingreso: enero-2008
Ubicación: Maracaibo
Mensajes: 214
Antigüedad: 16 años, 3 meses
Puntos: 17
Respuesta: Duda con registro

ok.. voy a probar y te digo
  #4 (permalink)  
Antiguo 23/05/2008, 22:00
Avatar de uokesita  
Fecha de Ingreso: enero-2008
Ubicación: Maracaibo
Mensajes: 214
Antigüedad: 16 años, 3 meses
Puntos: 17
Respuesta: Duda con registro

La verdad tampoco me funciona... mira probe quitandole la parte de validacion de campos en blanco y si me guarda el registro....

o sea esta parte solamente
Código PHP:
 if (!$userName || !$userPass || !$userPass2 || !$userMail )
  {
     echo 
"No has introducido todos los detalles requeridos.<br>"
          
."Por favor vuelve e intentalo de nuevo.";
     exit;
  } 
si le eliminio solo esa parte si me lo guarda todo normal.. todos los datos... yo no le veo nada de malo a este codigo.. no entiendo porque el error



bueno esto de validar si el campo esta vacio me esta dando mas problemas ya que en otra pagina vuelvo a usar otra validacion de campo vacio para realizar busquedas de registro

y me da el mensaje de campo vacio a pesar de que existe un registro con las palabras que le indico.

tendra algo que ver con el servidor? porq lo uso en apache q lo tengo instalado en mi pc y me funciona normal.
tambien hice pruebas en lycos y funiona bien.
pero en este otro servidor http://gside.web44.net es que me saltan los errores...

alguien me ayuda?

Última edición por uokesita; 24/05/2008 a las 13:38
  #5 (permalink)  
Antiguo 24/05/2008, 14:09
Avatar de uokesita  
Fecha de Ingreso: enero-2008
Ubicación: Maracaibo
Mensajes: 214
Antigüedad: 16 años, 3 meses
Puntos: 17
Respuesta: Duda con registro

Bueno ya consigo que me haga todo sin la validacion de campo vacio....
el nuevo servidor usa php5 y en el que estaba haciendo las pruebas php4.. esto influye en como recoje la informacion de los campos? porq es el unico error que me da..
  #6 (permalink)  
Antiguo 24/05/2008, 16:07
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Duda con registro

Hola uokesita,

Como te comente debes de usar $_POST o $_GET dependiendo de tu tipo de envió, para poder leer las variables. Te recomiendo hagas eso primero, y luego para la validación no te confíes usar !$var, usa empty().

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:45.