Bases de Datos en PHP

Publicado en por Prof & Lic. Luis E. Aponte I. Programando en PHP

Ejemplo.

 

Nombre de la base de datos: phpfacil

También he creado una tabla llamada: alumnos.  La estructura de la misma es:

CREATE TABLE alumnos (

  codigo int(11) NOT NULL auto_increment,

  nombre varchar(40) default NULL,

  mail varchar(50) default NULL,

  codigocurso int(11) default NULL,

PRIMARY KEY (`codigo`)

) 

La tabla almacenará datos de alumnos que desarrollarán cursos de programación en PHP, ASP y JSP.
El código del alumno es de tipo numérico (int) y al indicar que es auto_increment se generará automáticamente por el gestor de base de datos.

Los campos nombre y mail son de tipo varchar (podemos almacenar cualquier caracter) y por últmo el campo codigocurso representa el curso a tomar por el alumno (1=PHP, 2=ASP y 3=JSP)


El campo clave de esta tabla es el código de alumno (es decir no podemos tener dos alumnos con el mismo código, no así el nombre del alumno que puede eventualmente repetirse)

 

         INSERT (Alta de registros en una tabla)

            Luego de crear una base de datos y sus tablas, veremos como agregar registros.


            Para añadir datos en la tabla empleamos el comando SQL llamado insert.
            Necesitamos dos páginas para este proceso, una será el formulario de carga de datos y la siguiente será la que efectúe la inserción en la tabla.

 

Formulario de carga de datos:

<html>

<head>

<title>Problema</title>

</head>

<body>

<h1>Alta de Alumnos</h1>

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

Ingrese nombre:

<input type="text" name="nombre"><br>

Ingrese mail:

<input type="text" name="mail"><br>

Seleccione el curso:

<select name="codigocurso">

<option value="1">PHP</option>

<option value="2">ASP</option>

<option value="3">JSP</option>

</select>

<br>

<input type="submit" value="Registrar">

</form>

</body>

</html>

 

Formulario de Insercion

 

<html>

<head>

<title>Problema</title>

</head>

<body>

<?php

$conexion=mysql_connect("localhost","root","z80")   or die("Problemas en la conexion");

mysql_select_db("phpfacil",$conexion) or   die("Problemas en la seleccion de la base de datos");

mysql_query("insert into alumnos(nombre,mail,codigocurso) values  $_REQUEST[nombre]','$_REQUEST[mail]',$_REQUEST[codigocurso])",

   $conexion) or die("Problemas en el select".mysql_error());

mysql_close($conexion);

echo "El alumno fue dado de alta.";

?>

</body>

</html>

 

Listado (selección de registros de una tabla)

El programa que muestra los registros en una página es:

<html>

<head>

<title>Problema</title>

</head>

<body>

<?php

$conexion=mysql_connect("localhost","root","z80")

  or  die("Problemas en la conexion");

mysql_select_db("phpfacil",$conexion)

  or  die("Problemas en la selección de la base de datos");

$registros=mysql_query("select codigo,nombre, mail, codigocurso

                       from alumnos",$conexion) or

  die("Problemas en el select:".mysql_error());

while ($reg=mysql_fetch_array($registros))

{

  echo "Codigo:".$reg['codigo']."<br>";

  echo "Nombre:".$reg['nombre']."<br>";

  echo "Mail:".$reg['mail']."<br>";

  echo "Curso:";

  switch ($reg['codigocurso']) {

    case 1:echo "PHP";

           break;

    case 2:echo "ASP";

           break;

    case 3:echo "JSP";

           break;

  }

  echo "<br>";

  echo "<hr>";

}

mysql_close($conexion);

?>

</body>

</html>

 

                Consulta (selección de registros de una tabla)

 El proceso de consulta de datos de una tabla es similar al del listado, la diferencia es que se muestra sólo aquel que cumple la condición por la que buscamos.

pagina1.



Debemos codificar un formulario para el ingreso del mail a consultar:

<html>

<head>

<title>Problema</title>

</head>

<body>

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

Ingrese el mail del alumno a consultar:

<input type="text" name="mail">

<br>

<input type="submit" value="buscar">

</form>

</body>

</html>

 

pagina 2.php



 

Publicidad
Para estar informado de los últimos artículos, suscríbase:
Comentar este post