Los datos no se ingresan a la BD
Publicado por Vale (9 intervenciones) el 26/01/2015 19:55:22
Hola. Buenos dias, tengo una duda/problema. Cree una pagina y funciona de maravilla, solo que ahora quise hacer una pagina para que los usuarios puedan poner sus datos personales. La pagina carga el formulario, ningun error todo perfecto, es una pagina restringida, es decir que los usuarios logueados solo pueden verlas. Bien aca el problema. Al presionar enviar para mandar los datos, todo carga bien, solo que al fijarme en la BD los datos no se cargaron. Les dejo los archivos para que puedan ayudarme. Muchisimas gracias.
-Base de datos
Archivo: registro.php Funcion: Aquí los usuarios se registran, es decir que se llenan las primeras 4 tablas de la BD. Este archivo no tiene ninguna falla, solo lo deje porque tiene interaccion con la base de datos
Y por ultimo acá esta datos.php, el que no ingresa los archivos a la bd.
Espero que me puedan ayudar muchas gracias
-Base de datos
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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`)
)
Archivo: registro.php Funcion: Aquí los usuarios se registran, es decir que se llenan las primeras 4 tablas de la BD. Este archivo no tiene ninguna falla, solo lo deje porque tiene interaccion con la base de datos
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?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>
Y por ultimo acá esta datos.php, el que no ingresa los archivos a la bd.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?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 puedes ver esto. Registrate o logueate.<br />
<a href='acceso.php'>Ingresar</a> / <a href='registro.php'>Regitrarme</a>";
}
?>
Espero que me puedan ayudar muchas gracias
Valora esta pregunta


0