Autor Tema: No se ingresan los datos a la BD  (Leído 457 veces)

Desconectado Valecapo12

  • PHPerit@
  • *
  • Mensajes: 1
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
No se ingresan los datos a la BD
« en: 26 de Enero de 2015, 19:17:23 pm »
Hola, estoy creando una web donde el sistema en general estaría bien, solo que quiero que los usuarios coloquen su informacion, sus intereses, musica, contextura fisica, etc, y los datos no se suben. Dejo la copia de los archivos comprometidos. Espero que me puedan ayudar. Muchas gracias

Base de datos
Código: [Seleccionar]
CREATE TABLE `usuarios` (
    `usuario_id` int(4) NOT NULL AUTO_INCREMENT,
    `usuario_nombre` varchar(15) NOT NULL DEFAULT '',
    `usuario_clave` varchar(32) NOT NULL DEFAULT '',
    `usuario_email` varchar(50) NOT NULL DEFAULT '',
    `usuario_freg` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
    `usuario_sexo` varchar(15) NOT NULL DEFAULT '',
`usuario_edad` varchar(15) NOT NULL DEFAULT '',
    `usuario_nacionalidad` varchar(15) NOT NULL DEFAULT '',
`extras_intereses` varchar(400) NOT NULL DEFAULT '',
`extras_condiciones_pelo` varchar(200) NOT NULL DEFAULT '',
`extras_condiciones_ojos` varchar(200) NOT NULL DEFAULT '',
`extras_condiciones_piel` varchar(200) NOT NULL DEFAULT '',
`extras_condiciones_fisicas` varchar(200) NOT NULL DEFAULT '',
`extras_musica` varchar(200) NOT NULL DEFAULT '',
`extras_actividades` varchar(200) NOT NULL DEFAULT '',
`extras_a` varchar(200) NOT NULL DEFAULT '',
`extras_b` varchar(200) NOT NULL DEFAULT '',
`extras_c` varchar(200) NOT NULL DEFAULT '',
`extras_d` varchar(200) NOT NULL DEFAULT '',
PRIMARY KEY (`usuario_id`)
)

registro.php (Los usuarios se registran)

Código: [Seleccionar]
<?php
include(
'acceso_db.php'); // incluimos el archivo de conexión a la Base de Datos
?>

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
    if(isset(
$_POST['enviar'])) { // comprobamos que se han enviado los datos desde el formulario
        // creamos una función que nos parmita validar el email
        function valida_email($correo) {
            if (preg_match('/^[A-Za-z0-9-_.+%]+@[A-Za-z0-9-.]+\.[A-Za-z]{2,4}$/'$correo)) return true;
            else return false;
        }
        // Procedemos a comprobar que los campos del formulario no estén vacíos
        $sin_espacios count_chars($_POST['usuario_nombre'], 1);
        if(!empty($sin_espacios[32])) { // comprobamos que el campo usuario_nombre no tenga espacios en blanco
            echo "El campo <em>usuario_nombre</em> no debe contener espacios en blanco. <a href='javascript:history.back();'>Reintentar</a>";
        }elseif(empty($_POST['usuario_nombre'])) { // comprobamos que el campo usuario_nombre no esté vacío
            echo "No haz ingresado tu usuario. <a href='javascript:history.back();'>Reintentar</a>";
        }elseif(empty($_POST['usuario_clave'])) { // comprobamos que el campo usuario_clave no esté vacío
            echo "No haz ingresado contraseña. <a href='javascript:history.back();'>Reintentar</a>";
        }elseif($_POST['usuario_clave'] != $_POST['usuario_clave_conf']) { // comprobamos que las contraseñas ingresadas coincidan
            echo "Las contraseñas ingresadas no coinciden. <a href='javascript:history.back();'>Reintentar</a>";
        }elseif(!valida_email($_POST['usuario_email'])) { // validamos que el email ingresado sea correcto
            echo "El email ingresado no es válido. <a href='javascript:history.back();'>Reintentar</a>";
        }else {
            // "limpiamos" los campos del formulario de posibles códigos maliciosos
            $usuario_nombre mysql_real_escape_string($_POST['usuario_nombre']);
            $usuario_clave mysql_real_escape_string($_POST['usuario_clave']);
            $usuario_email mysql_real_escape_string($_POST['usuario_email']);
            // comprobamos que el usuario ingresado no haya sido registrado antes
            $sql mysql_query("SELECT usuario_nombre FROM usuarios WHERE usuario_nombre='".$usuario_nombre."'");
            if(mysql_num_rows($sql) > 0) {
                echo "El nombre usuario elegido ya ha sido registrado anteriormente. <a href='javascript:history.back();'>Reintentar</a>";
            }else {
                $usuario_clave md5($usuario_clave); // encriptamos la contraseña ingresada con md5
                // ingresamos los datos a la BD
                $reg mysql_query("INSERT INTO usuarios (usuario_nombre, usuario_clave, usuario_email, usuario_freg) VALUES ('".$usuario_nombre."', '".$usuario_clave."', '".$usuario_email."', NOW())");
                if($reg) {
                    echo "Datos ingresados correctamente.";
                }else {
                    echo "ha ocurrido un error y no se registraron los datos.";
                }
            }
        }
    }else {
?>

<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
    <label>Usuario:</label><br />
    <input type="text" name="usuario_nombre" maxlength="15" /><br />
    <label>Contraseña:</label><br />
    <input type="password" name="usuario_clave" maxlength="15" /><br />
    <label>Confirmar Contraseña:</label><br />
    <input type="password" name="usuario_clave_conf" maxlength="15" /><br />
    <label>Email:</label><br />
    <input type="text" name="usuario_email" maxlength="50" /><br />
    <input type="submit" name="enviar" value="Registrar" />
    <input type="reset" value="Borrar" />
</form>
<?php
    }
?>

</body>
</html>

data.php (Este es el archivo donde está el problema, los datos no se insertan.

Código: [Seleccionar]
<?php
    session_start
();
    include(
'acceso_db.php'); // incluímos los datos de acceso a la BD
    // comprobamos que se haya iniciado la sesión
    
if(isset($_SESSION['usuario_nombre'])) {
?>

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
Hola <?=$_SESSION['usuario_nombre']?>, Aqui podras poner tus intereses, como eres, que te gusta y demas.
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<?php
    if(isset(
$_POST['enviar'])) {// comprobamos que se han enviado los datos desde el formulario
          
                // ingresamos los datos a la BD
                $reg mysql_query("INSERT INTO usuarios (usuario_sexo, usuario_edad, usuario_nacionalidad, extras_intereses, extras_condiciones_pelo, extras_condiciones_ojos, extras_condiciones_piel, extras_condiciones_fisicas, extras_musica, extras_actividades) VALUES ('".$usuario_sexo."', '".$usuario_edad."', '".$usuario_nacionalidad."', '".$extras_intereses."', '".$extras_condiciones_pelo."', '".$extras_condiciones_ojos."', '".$extras_condiciones_piel."', '".$extras_condiciones_fisicas."', '".$extras_musica."', '".$extras_actividades."', NOW())");
                if($reg) {
                    echo "Datos ingresados correctamente.";
                }else {
                    echo "ha ocurrido un error y no se registraron los datos.";
                }
            }
        
   else {
?>

<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
    <label>Sexo:</label><br />
    <input type="text" name="usuario_sexo" maxlength="12" /><br />
    <label>Edad:</label><br />
    <input type="text" name="usuario_edad" maxlength="3" /><br />
    <label>Nacionalidad:</label><br />
    <input type="text" name="usuario_nacionalidad" maxlength="40" /><br />
    <label>Cuenta un poco sobre ti:</label><br />
    <input type="text" name="extras_intereses" maxlength="500" /><br />
   <label>Color de pelo:</label><br />
    <input type="text" name="extras_condiciones_pelo" maxlength="80" /><br />
   <label>Color de ojos:</label><br />
    <input type="text" name="extras_condiciones_ojos" maxlength="80" /><br />
  <label>Color de piel:</label><br />
    <input type="text" name="extras_condiciones_piel" maxlength="80" /><br />
  <label>Contextura fisica:</label><br />
    <input type="text" name="extras_condiciones_fisicas" maxlength="80" /><br />
    <label>Musica que te gusta:</label><br />
    <input type="text" name="extras_musica" maxlength="150" /><br />
    <label>Actividades que realizas:</label><br />
    <input type="text" name="extras_actividades" maxlength="30" /><br />
   
   
   <input type="submit" name="enviar" value="Actualizar datos" />
    <input type="reset" value="Borrar" />
</form>
<?php
    }
?>

</body>
</html>
<?php
    
}else {
        echo 
"No estas registrado.<br />
        <a href='acceso.php'>Ingresar</a> / <a href='registro.php'>Regitrarme</a>"
;
    }
?>

Espero que me puedan ayudar para ver cual es el problema. Muchas gracias.

Comunidad PHPeros

No se ingresan los datos a la BD
« en: 26 de Enero de 2015, 19:17:23 pm »