EJERCICIO PROPUESTO DE PROGRAMACION

Transcription

EJERCICIO PROPUESTO DE PROGRAMACION
EJERCICIO PROPUESTO DE PROGRAMACION ( CRUCE DE TABLAS )
El siguiente programa permite la actualización simultanea de datos entre 2 tablas que se
encuentran unidas a través de un campo de enlace, en este programa se realizan las operaciones
de inserción, búsqueda y listado de registros . ( queda de su parte realizar las operaciones de
modificación y eliminación ) . al final dejamos algunos formularios propuestos con el fin de que
desarrolle la mejor experiencia posible en este tipo de formularios , ya que son muy comunes en el
desarrollo de sistemas de información.
Ejercicio: Crear una base de datos llamada ESTUDIOS y crear las siguientes tablas
Alumno ( cedula , nombre )
Notas ( cedula , materia , nota )
Realizar un formulario que realice las siguientes operaciones
a.
b.
c.
d.
Insertar un nuevo alumno
Buscar un por su cedula y cargar sus datos
Insertar las notas de un alumno que se encuentre registrado
Listar las notas que se encuentran registradas ( cruce de alumnos y notas )
Programa ejemplo:
<html>
<body>
<?php
$con = mysql_connect("localhost","root","");
mysql_select_db("php20082");
// limpia variable
$ced = "";
$nom = "";
// busca el alumno
if ( isset($_POST['cedula']) )
{
$ced = $_POST['cedula'];
$sql = "select * from alumno where cedula = '$ced' ";
$resultado = mysql_query($sql,$con);
if ( $vector = mysql_fetch_array($resultado) )
$nom = $vector['nombre'];
else
echo "NO EXISTE EL CODIGO ";
echo $sql;
echo "<br> resultado ( $resultado )";
}
// Insertar Alumno
if ( isset($_POST['btins']) )
{
$ced= $_POST['cedula']; $nom = $_POST['nombre'];
$sql= "insert into alumno (cedula,nombre) values ('$ced','$nom')";
$resultado = mysql_query($sql,$con);
echo $sql;
echo "<br> Alumno ( $resultado )";
}
// Insertar nota
if ( isset($_POST['btins2']) )
{
$ced= $_POST['cedula']; $mat = $_POST['materia']; $not = $_POST['nota'];
$sql= "insert into notas (cedula,materia,nota) values ('$ced','$mat',$not)";
$resultado = mysql_query($sql,$con);
echo $sql;
echo "<br> Nota Registrada ( $resultado )";
}
?>
<form action="alumno_nota.php" method="post">
<h2>Actualizacion de Alumnos</h2>
cedula : <input type="text" name="cedula" value = "<? echo $ced ?>" > <br>
nombre : <input type="text" name="nombre" value = "<? echo $nom ?>"><br>
<input type="submit" name="btins" value="Insertar">
<input type="submit" name="btbus" value="Buscar">
<br>
<h2>Registro de Notas</h2>
materia : <input type="text" name="materia"><br>
nota : <input type="text" name="nota"><br>
<input type="submit" name="btins2" value="Insertar">
<input type="submit" name="btlis2" value="Listar">
</form>
<?
// Listar Alumnos con sus Notas / union de tablas
if ( isset($_POST['btlis2']) )
{
$sql = "select * from alumno,notas where alumno.cedula = notas.cedula ";
$resultado = mysql_query($sql,$con);
echo "<table border='1'>";
while ( $vector = mysql_fetch_array($resultado) )
{
$ced = $vector['cedula']; $mat = $vector['materia']; $not = $vector['nota']; $nom = $vector['nombre'];
echo "<tr>";
echo "<td> $ced </td> <td> $nom </td> <td> $mat </td> <td> $not </td>";
echo "</tr>";
}
mysql_free_result($resultado); // libera de memoria la tabla de resultados
}
mysql_close($con);
?>
</body>
</html>
EJERCICIOS PROPUESTOS
Para las siguientes tablas de un sistema de facturación
Cliente ( cedula , nombre , saldo )
Factura ( nrofactura , cedula , fecha , monto )
Elaborar los siguientes programas:





Hacer un formulario que permita registrar clientes.
Hacer un formulario que permita registrar una factura ( se debe escoger el cliente desde un
comboBox y cuando se registre la factura se debe actualizar ( aumentar ) el saldo del cliente
Hacer un formulario que permita eliminar una factura ( cuando de elimina la factura se debe
actualizar ( disminuir ) el saldo del cliente
Hacer un formulario que permita consultar las facturas que pertenezcan a un cliente dado
Hacer un formulario que permita consultar todas las facturas con el nombre del cliente ( cruce
entre facturas y clientes )