Foros del Web » Programando para Internet » PHP »

Problema al registrar usuario

Estas en el tema de Problema al registrar usuario en el foro de PHP en Foros del Web. Tengo el siguiente problema con el sistema de usuarios que estoy creando.. segun mi codigo php.. todo va bien... cuando un usuario se registra y ...
  #1 (permalink)  
Antiguo 29/09/2011, 16:36
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 11
Problema al registrar usuario

Tengo el siguiente problema con el sistema de usuarios que estoy creando.. segun mi codigo php.. todo va bien... cuando un usuario se registra y sus datos son correctos dice que se registro por ende envia los datos a la base de datos.. El problema es que los datos no los agrega a la base de datos.. no se cargan nuevos usuarios.. donde puede estar el problema? alguno me echa una mano?
Este es el codigo.. los de configuracion y conexion estan bien.. no los pongo porque creo que estaria demas..

Cita:
<?php

// archivos necesarios
require_once 'config.php';
require_once 'conexion.php';

// obtengo puntero de conexion con la db
$dbConn = conectar();

// si se envio el formulario
if ( !empty($_POST['submit']) ) {

// definimos las variables
if ( !empty($_POST['usuario']) ) $usuario = $_POST['usuario'];
if ( !empty($_POST['password']) ) $password = $_POST['password'];
if ( !empty($_POST['re-password']) ) $rePassword = $_POST['re-password'];
if ( !empty($_POST['email']) ) $email = $_POST['email'];

// completamos la variable error si es necesario
if ( empty($usuario) ) $error['usuario'] = 'Es obligatorio completar el nombre de usuario';
if ( empty($password) ) $error['password'] = 'Es obligatorio completar la contraseña';
if ( empty($email) ) $error['email'] = 'Es obligatorio completar el email';
if ( $_POST['password'] != $_POST['re-password'] ) {
$error['re-password'] = 'La contrase&ntilde;a no coincide';
}

// si no hay errores registramos al usuario
if ( empty($error) ) {

// inserto los datos de registro en la db
$query = "INSERT INTO 'usuarios' (usuario,password,email) VALUES ('$usuario','".md5($password)."','$email')";
$result = mysql_query($query, $dbConn);
header( 'Location: contacto_exitoso.php' );
die;
}
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<h1>Registro de Usuario</h1>

<? if (!empty($error)) { ?>
<ul>
<? foreach ($error as $mensaje) { ?>
<li><?= $mensaje ?></li>
<? } ?>
</ul>
<? } ?>

<form action="registrar.php" method="post">

<p>
<label for="usuario">Usuario</label><br />
<input name="usuario" type="text" value="<? if ( ! empty($usuario) ) echo $usuario; ?>" />
</p>
<p>
<label for="password">Contrase&ntilde;a</label><br />
<input name="password" type="password" value="<? if ( ! empty($password) ) echo $password; ?>" />
</p>
<p>
<label for="re-password">Repetir Contrase&ntilde;a</label><br />
<input name="re-password" type="password" value="<? if ( ! empty($rePassword) ) echo $rePassword; ?>" />
</p>
<p>
<label for="email">Correo Electr&oacute;nico</label><br />
<input name="email" type="text" value="<? if ( ! empty($email) ) echo $email; ?>" />
</p>
<p>
<input name="submit" type="submit" value="Reg&iacute;strate" />
</p>

</form>

</body>
</html>
  #2 (permalink)  
Antiguo 29/09/2011, 16:38
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problema al registrar usuario

Puedes empezar cambiando esta línea

Código PHP:
Ver original
  1. $result = mysql_query($query, $dbConn);

por esta otra, para comprobar si hay algún error con la consulta:

Código PHP:
Ver original
  1. $result = mysql_query($query, $dbConn) or die(mysql_error());

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 29/09/2011, 16:46
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 11
Respuesta: Problema al registrar usuario

Al poner lo que me dijiste.. evidentemente no sale mas que se ha registrado exitosamente.. sino esto..

Cita:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''usuarios' (usuario,password,email) VALUES ('hoho','27c9d5187cd283f8d160ec1ed2b5' at line 1
  #4 (permalink)  
Antiguo 29/09/2011, 16:49
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problema al registrar usuario

Ahí tienes la respuesta tu problema está en la $query

Prueba así:

Código PHP:
Ver original
  1. $query = "INSERT INTO usuarios (usuario,password,email) VALUES ('$usuario','".md5($password)."','$email')";
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 29/09/2011, 16:51
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 11
Respuesta: Problema al registrar usuario

El problema es esta parte del codigo.. como irian las comillas?

Cita:
$query = "INSERT INTO 'usuarios' (usuario,password,email) VALUES ('$usuario','".md5($password)."','$email')";
  #6 (permalink)  
Antiguo 29/09/2011, 16:52
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 11
Respuesta: Problema al registrar usuario

Justo me respondiste.. pruebo y te digo.. gracias ;)
  #7 (permalink)  
Antiguo 29/09/2011, 16:58
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 11
Respuesta: Problema al registrar usuario

Master.. dos simples comillas me complicaron la vida horas.. vos me lo solucionaste al toque... gracias maestro.. a veces uno esta tanto tiempo metido en esto que se le pasan estas cosas..ja saludos.. ;)

Etiquetas: registro, sistema, sql, usuarios
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 21:48.