Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema insertar datos MySQL

Estas en el tema de Problema insertar datos MySQL en el foro de PHP en Foros del Web. Hola, hago este tema por que me veo en la necesidad de requerir su ayuda. Estoy teniendo un problema el cual no tengo idea como ...
  #1 (permalink)  
Antiguo 15/07/2013, 10:40
 
Fecha de Ingreso: marzo-2013
Mensajes: 32
Antigüedad: 8 años, 8 meses
Puntos: 0
Problema insertar datos MySQL

Hola, hago este tema por que me veo en la necesidad de requerir su ayuda. Estoy teniendo un problema el cual no tengo idea como resolver ya que no encuentro el error. Mi problema es el siguiente:

Tengo un formulario de registro, tengo la base de datos creada, la conexion a la misma, el inconveniente es que cuando completo el formulario y envío los datos, cuando hago el mysql_query en un if para enviar una notificacion de que el registro fue correcto, esa consulta me retorna en FALSE por ende no entra en el if, no entiendo por que y esperaba que ustedes me pudieran ayudar. Muchas gracias de antemano.

Siempre me muestra la notificación de fail: "Hubo un error al procesar los datos. Por favor intente nuevamente."

El código.

Código:
<?php  
error_reporting(0); 
?> 
<?php 
$link=mysql_connect("localhost", "root", ""); 
mysql_select_db("code",$link) OR DIE ("Error: No es posible establecer la conexión"); 
?> 
<?php include ('includes/header.php'); ?> 
    <div id="wrapper"> 
        <div id="cabecera"></div> 
        <div id="conteiner"> 
            <header> 
                <div id="search"> 
                    <form> 
                        <input type="search" name="busq"> 
                    </form> 
                </div> 
            </header>             
            <div id="content"> 
                <div id="registronuevo"> 
                    <?php  
                        if(isset($_POST['registrar'])){ 
                            $nombre= ucfirst($_POST['name']); 
                            $ape = ucfirst($_POST['ape']); 
                            $user = strtolower($_POST['user']); 
                            $pass = $_POST['pass']; 
                            $mail = $_POST['email']; 

                            //Hacemos consulta a la base de datos de usuarios para comprobar la existencia del mismo 
                            $sql = "SELECT user, email FROM usuarios"; 
                            $res = mysql_query ($sql, $link); 
                            while ($row1 = mysql_fetch_row($res)){ 
                                if($user == $row1[0]){ 
                                    // Si existe ese nombre de usuario enviamos una notificacion de error 
                                    $notif = "<div id='notif_fail'><p>Ese nombre de usuario ya existe.</p></div>"; 
                                }elseif ($mail == $row1[1]) { 
                                    // Si ese email ya fue usado anteriormente enviamos notificacion de error 
                                    $notif = "<div id='notif_fail'><p>Ese email ya está registrado con otro usuario.</p></div>"; 
                                }else{ 
                                    // Si todo esta correcto, ingresamos los datos a la base de datos para dar de alta al nuevo usuario 
                                    $in = "INSERT INTO usuarios ('id_us' ,'nombre_us' ,'apellido_us' ,'user' ,'pass' ,'email') VALUES ('',  '$nombre',  '$ape', '$user',  '$pass',  '$mail')"; 


                                    if ( mysql_query ($in, $link)){ 
                                        $notif = "<div id='notif_ok'><p>Se ha registrado correctamente, ya puedes <a href='login.php'>Iniciar Sesión</a>.</p></div>"; 
                                    }else{ 
                                        $notif = "<div id='notif_fail'><p>Hubo un error al procesar los datos. Por favor intente nuevamente.</p></div>"; 
                                    } 
                                } 
                            } 
                            
                        } 
                    ?> 
                    <h3>REGISTRARSE</h3> 
                    <?php echo "$notif"; ?> 
                    <form action="" method="POST"> 
                        <input type="text" name="name"  required placeholder="Nombre" id="inputname"> 
                        <input type="text" name="ape" required placeholder="Apellido" id="inputname"><br> 
                        <input type="text" name="user" required placeholder="Usuario" id="inputname"> 
                        <input type="password" name="pass" required placeholder="Contraseña" id="inputname"><br> 
                        <input type="text" name="email" required placeholder="Email" id="inputmail"><br>                         
                        <button name="registrar" class="regis">Registrarse</button> 
                    </form> 
                </div> 
                 
            </div> 
        </div> 
    <div> 
<?php include ('includes/footer.php'); ?>

Espero que puedan ayudarme ya que me estuve quemando el bocho tratando de darme cuenta cual es el problema y no logré encontrarlo. Saludos y gracias de antemano !
  #2 (permalink)  
Antiguo 15/07/2013, 10:58
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 10 años, 6 meses
Puntos: 56
Respuesta: Problema insertar datos MySQL

Podrías comenzar por quitar error_reporting(0); para que muestre los errores y después verificar que los datos llegan correctamente a tu consulta.
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.
  #3 (permalink)  
Antiguo 15/07/2013, 11:01
 
Fecha de Ingreso: marzo-2013
Mensajes: 32
Antigüedad: 8 años, 8 meses
Puntos: 0
Respuesta: Problema insertar datos MySQL

Cita:
Iniciado por CesarHC Ver Mensaje
Podrías comenzar por quitar error_reporting(0); para que muestre los errores y después verificar que los datos llegan correctamente a tu consulta.

Ya solucioné el problema. Era una pavada, estaba poniendo mal los nombres de los campos de la tabla, los puse entre comillas y van sin comillas. Muchas gracias de todos modos. Saludos.

Etiquetas: inconveniente, mysql, registros
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:55.