REPUBLICA BOLIVARIANA DE VENEZUELA
UNIVERSIDAD NACIONAL EXPERIMENTAL
“RÓMULO GALLEGOS”
ÁREA DE INGENIERIA EN SISTEMAS
MATERIA: PROGRAMACIÓN III
HTML, PHP y MySQL
Profesor: Bachiller:
Norbelto Castro Alessandro González C.I. 25.130.216
San Juan de los Morros, 30/05/2020
Iniciamos creando el formulario de nuestra preferencia en HTML.
<!DOCTYPE html>
<html>
<head>
<title>Suscripción boletín</title>
<style type="text/css">
h1 { text-align: center; }
td { padding: 0.2em 2em ; }
</style>
</head>
<body>
<h1>Suscripción electrónica a nuestro boletín.</h1>
<p>Nota: Este es un formulario de ejemplo en el que los datos
aquí escritos se
trasladan a otra página.</p>
<form action="comprobar.php" method="post"/>
<p>Nombre: <input type="text" name="nombre"/>
Apellidos: <input type="text" name="apellidos" size="40"/>
E-Mail: <input type="text" name="mail" size="35"/></p>
<p>Contraseña: <input type="password" name="passw"/><br/>
<table>
<tr>
<td>
Genero<br/>
<input type="radio" name="genero" value="V"/> Varón<br/>
<input type="radio" name="genero" value="M"/> Mujer</p>
</td>
<td>
Nivel de estudios<br/>
<input type="radio" name="estudios" value="elemental"
checked="checked">
Certificado escolar<br/>
<input type="radio" name="estudios" value="basico"/>
Graduado en E.S.O.<br/>
<input type="radio" name="estudios" value="bachiller"/>
Bachiller - Formación Profesional <br/>
<input type="radio" name="estudios" value="Diplomado"/>
Diplomado<br/>
<input type="radio" name="estudios" value="licenciado"/>
Licenciado o Doctorado<br/>
</td>
</tr>
</table>
<p>Día de la semana que le interesa recibirlo:</p>
<select name="dia">
<option>día de la semana:</option>
<option value="">lunes</option>
<option value="Martes">martes</option>
<option value="Miércoles">miercoles</option>
<option value="Jueves">jueves</option>
<option value="Viernes">viernes</option>
<option value="Sábado">sábado</option>
<option value="Domingo">domingo</option>
</select>
</p>
<p>Su opinión: <br/>
<textarea name="comentario" rows="5" cols="50">Comentario:
</textarea>
<p><input type="submit" value="Comprobar el formulario">
<input type="reset" value="borrar todo"></p>
</form>
</body>
</html>
En este formulario hemos incluido al menos un campo de cada tipo, para que se vean
los resultados del traslado de datos.
Página de comprobación de datos
Los resultados los veremos en la página "comprobar.php" la cual la colocaremos en la
misma carpeta que el archivo anterior.
Esta será la página "comprobar.php".
<!DOCTYPE html>
<html>
<head>
<title>Comprobar datos</title>
</head>
<body>
<h1>Tus Datos de suscripción: </h1>
<p>Estos son los datos que nos has enviado:</p>
<?php
echo "Nombre: "; echo $_POST['nombre']; echo "<br/>";
echo "apellidos: "; echo $_POST['apellidos']; echo "<br/>";
echo "E-mail: "; echo $_POST['mail']; echo "<br/>";
echo "contraseña: "; echo $_POST['passw']; echo "<br/>";
echo "Genero: "; echo $_POST['genero']; echo "<br/>";
echo "Estudios: "; echo $_POST['estudios']; echo "<br/>";
echo "Día de la semana: "; echo $_POST['dia']; echo "<br/>";
echo "Tu comentario: "; echo $_POST['comentario']; echo
"<br/>";
?>
<p>Comprueba tus datos antes de enviarlos, si no están bien
vuelve a escribirlos.</p>
<p>Los datos son correctos: <a href="form.html">Enviar</a>
<p>Los datos no son correctos: <a href="enviar.html">Volver a
escribirlos</a>
</body>
</html>
Información PHP hacia nuestra Base de Datos MySQL
Debemos recordar que antes de enviar los datos a nuestra Base de datos, hay que
tenerla creada con antelación y establecer una conexión con unas líneas de código en un
archivo aparte de php, los datos necesarios:
Nombre de la base de datos: form_basedepruebas
Nombre de usuario de la base de datos: form_pepe
Contraseña: noteladigo
Host: localhost
Cabe destacar que todos estos datos de la base de datos los ingresamos al crearla.
Siguiendo el ejemplo anterior, en nuestra base de datos hemos creado varias tablas donde se
va a almacenar dicha información.
Tabla 1 - Usuario
Id - Nombre - Apellidos - mail - passw
Tabla 2 - Genero
Id - Genero
Tabla 3 - Estudios
Id - Estudios
Tabla 4 - Semana
Id - Dia
Tabla 5 - Comentarios
Id - Comment
Tabla 6 - Enlaces
Id - Usuario - Genero - Estudios - Semana - Comentarios
Al crear la metodología en la cual se manejará la BD variará dependiendo de cómo la
administren, en este caso describiremos cómo será la metodología.
La Tabla 1 - Usuario, guardará la información principal del usuario que se requiere.
Las Tablas 2 - 3 - 4 - 5, guardaran 1 solo valor que es el que nos interesa.
La tabla 6 - Enlaces, la utilizaremos para enlazar la información de cada usuario
dentro de las tablas utilizando el valor genérico ID que nos da MySQL por defecto.
Se ha utilizado esta metodología porque nos parece más cómoda para trabajar, sin
embargo, bien se puede almacenar toda esta información en una sola tabla.
Ahora procedemos a enviar la información a la BD mediante el código PHP que
inserte los datos guardados en POST en la Tabla 1 - Usuarios. Esto se hace con esta sencilla
línea de código:
mysql_query (" INSERT INTO base.tabla (nombre de los campos) values (datos
correspondientes) ");
Que en nuestro caso sería lo siguiente:
mysql_query ("INSERT INTO `form_basedepruebas`.`Usuarios` (`Nombre`,
`Apellidos`, `mail`, `passw`) VALUES ('$_POST[nombre]', '$_POST[apellidos]',
'$_POST[mail]', '$_POST[passw]') ");
mysql_query ("INSERT INTO `form_basedepruebas`.`Genero` (`Genero`) VALUES
('$_POST[genero]') ");
mysql_query ("INSERT INTO `form_basedepruebas`.`Estudios` (`Estudios`)
VALUES ('$_POST[estudios]') ");
mysql_query ("INSERT INTO `form_basedepruebas`.`Semana` (`Dia`) VALUES
('$_POST[dia]') ");
mysql_query ("INSERT INTO `form_basedepruebas`.`Comentarios` (`Comment`)
VALUES ('$_POST[comentario]') ");
mysql_query (“INSERT INTO `Enlaces` (`Usuario`, `Genero`, `Estudios`, `Semana`,
`Comentarios`) SELECT `Usuario`.`id`, `Genero`.`id`, `Estudios`.`id`, `Semana`.`id`,
`Comentarios`.`id` FROM `Usuario`, `Genero`, `Estudios`, `Semana`, `Comentarios`
");
Con esta metodología insertamos los datos en diferentes tablas y con la Tabla-
Enlaces, unimos toda la información correspondiente. Para que a la hora de imprimir solo se
utilice una pequeña sintaxis.