Control Semana 7 Freddy Barrera
Control Semana 7 Freddy Barrera
Control Semana 7 Freddy Barrera
Control Semana 7
Nombre Alumno
Nombre Asignatura
programación WEB II
Instituto IACC
08-11-2020
Desarrollo
Usted ha sido seleccionado para la creación de un sistema bajo ambiente web basado en programación
orientada a objetos y utilizando PHP como leguaje de comunicación entre el servidor y el front en HTML
que maneje el control de notas de un instituto de educación media, donde debe manejar: estudiantes,
materias, notas por estudiante en cada materia (3 puntos).
En este programa tenemos un menú con 4 opciones, Alumnos, Ramos y Notas, están orientadas para
ingresar los datos del alumno de acuerdos a sus respectivas calificaciones.
En el botón buscar podremos seleccionar por el nombre del alumno y este nos entregara un detalle de
las materias y calificaciones que tienen el alumno para cada ramo.
menú Alumno (archivo Alumnos.html) aquí podremos ingresar a nuestros nuevos alumnos
Buscador (acá podremos listar las notas filtrando por el nombre de aluno, nos entregaran las notas por
cada ramo de manera global)
INDEX.HTML
<html>
<head>
<title>Instituto</title>
</head>
<body>
<!-- http://localhost/instituto/html/index.html -->
<form action='index.html' method='post' name='form'>
<script type='text/javascript' src='../js/index.js'></script>
<center>MENU OPCIONES </center>
<table align='center' valign='top'>
<tr>
<td><input type='button' name='alumnos' value='Alumnos' onclick='menu(1)'></td>
<td><input type='button' name='ramos' value='Ramos' onclick='menu(2)'></td>
<td><input type='button' name='notas' value='Notas' onclick='menu(3)'></td>
<td><input type='button' name='buscar' value='Buscar' onclick='menu(4)'></td>
</tr>
</table>
</form>
</body>
</html>
ALUMNOS.HTML
<html>
<head>
<title>Instituto</title>
</head>
<body>
<form action='../class/alumnos.php' method='post' name='form'>
<script type='text/javascript' src='../js/index.js'></script>
<center>Alumnos</center>
<table align='center' valign='top'>
<tr>
<td>Nombre : </td>
<td><input type='txt' name='nombre' value='' ></td>
</tr>
<tr>
<td>Apellido : </td>
<td><input type='txt' name='apellido' value='' ></td>
</tr>
<tr>
<td>Edad : </td>
<td><input type='txt' name='edad' value='' ></td>
</tr>
<tr>
<td colspan="2"><input type='submit' name='agregar' value='Grabar' ></td>
</tr>
</table>
</form>
</body>
</html>
RAMOS.HTML
<html>
<head>
<title>Instituto</title>
</head>
<body>
<form action='../class/ramos.php' method='post' name='form'>
<script type='text/javascript' src='../js/index.js'></script>
<center>Ramos</center>
<table align='center' valign='top'>
<tr>
<td>Nombre : </td>
<td><input type='txt' name='nombre' value='' ></td>
</tr>
<tr>
<td colspan="2"><input type='submit' name='agregar' value='Grabar' ></td>
</tr>
</table>
</form>
</body>
</html>
NOTAS.PHP
<?php
require_once("../class/alumnos.php");
require_once("../class/ramos.php");
$alumnos = $objAlumunos->listadoAlumnos();
$ramos = $objRamos->listadoRamos();
$largoArrayAl = sizeof($alumnos);
$largoArrayRa = sizeof($ramos);
?>
<html>
<head>
<title>Instituto</title>
</head>
<body>
<form action='../class/notas.php' method='post' name='form' border="1">
<script type='text/javascript' src='../js/index.js'></script>
<center> NOTAS </center>
<table align='center' valign='top'>
<tr>
<td> Alumnos </td>
<td>
<select name="alumnos" id="alumnos">
<option value="">Seleccion</option>
<?php
for($y=0; $y<$largoArrayAl; $y++)
{
$codigo = $alumnos[$y]["codigo"];
$nombre = $alumnos[$y]["nombre"];
$apellido = $alumnos[$y]["apellido"];
?>
</select>
</td>
<td> Ramos </td>
<td>
<select name="ramos" id="ramos">
<option value="">Seleccion</option>
<?php
for($i=0; $i<$largoArrayRa; $i++)
{
$id = $ramos[$i]["id"];
$nombre = $ramos[$i]["nombre"];
<?php
require_once("../class/alumnos.php");
require_once("../class/ramos.php");
require_once("../class/notas.php");
$alumnos = $objAlumunos->listadoAlumnos();
$ramos = $objRamos->listadoRamos();
$largoArrayAl = sizeof($alumnos);
$largoArrayRa = sizeof($ramos);
?>
<html>
<head>
<title>Instituto</title>
</head>
<body>
<form action='buscar.php' method='post' name='form' border="1">
<input type="hidden" name="bandera" id="bandera" value="1" />
<script type='text/javascript' src='../js/index.js'></script>
<center> NOTAS </center>
<table align='center' valign='top'>
<tr>
<td> Alumnos </td>
<td>
<select name="alumnos" id="alumnos">
<option value="">Seleccion</option>
<?php
for($y=0; $y<$largoArrayAl; $y++)
{
$codigo = $alumnos[$y]["codigo"];
$nombre = $alumnos[$y]["nombre"];
$apellido = $alumnos[$y]["apellido"];
?>
</select>
</td>
<td>
<input type="button" name="bus" value="Buscar" onclick="buscar()"/>
</td>
</tr>
</table>
<?php
if(isset($_POST["bandera"]))
{
$objNotas = new notas();
$objNotas->setIdAlumnos($_POST["alumnos"]);
$notas = $objNotas->listadoNotas($objNotas->getIdAlumnos());
//$notas = $objNotas->listadoNotas($_POST["alumnos"]);
$largoArrayNt = sizeof($notas);
?>
<table align='center' valign='top'>
<tr>
<td> Ramos </td>
<td> Nota 1</td>
<td> Nota 2</td>
<td> Nota 3</td>
</tr>
<?php
for($y=0; $y<$largoArrayNt; $y++)
{
$ramos = $notas[$y]["ramos"];
$nota_1 = $notas[$y]["nota_1"];
$nota_2 = $notas[$y]["nota_2"];
$nota_3 = $notas[$y]["nota_3"];
?>
<tr>
<td><?php echo $ramos; ?> </td>
<td><?php echo $nota_1; ?> </td>
<td><?php echo $nota_2; ?> </td>
<td><?php echo $nota_3; ?> </td>
</tr>
<?php
}
?>
</table>
<?php
}
?>
CLASSES
CLASE ALUMNO
<?php
require_once("conexion.php");
class alumnos
{
private $vistas;
private $codigo;
private $nombre;
private $apellido;
private $edad;
//$objAlumnos->agregarAlumnos($_POST["nombre"],$_POST["apellido"],$_POST["edad"]);
$objAlumnos->agregarAlumnos($objAlumnos->getNombre(),$objAlumnos->getApellido(),
$objAlumnos->getEdad());
}
?>
CLASE CONEXION
<?php
function Conectar()
{
if(!($link = mysqli_connect("localhost","root","","instituto")))
{
echo "Error Conectar a la base de datos.";
exit();
}
/*if(!mysqli_select_db("instituto",$link))
{
echo "Error Seleccionado a la base de datos.";
exit();
}*/
return $link;
}
?>
CLASE NOTAS
<?php
require_once("conexion.php");
class notas
{
private $vistas;
private $idAlumnos;
private $idRamos;
private $nota_1;
private $nota_2;
private $nota_3;
$objNotas->setIdAlumnos($_POST["alumnos"]);
$objNotas->setIdRamos($_POST["ramos"]);
$objNotas->setNota_1($_POST["nota_1"]);
$objNotas->setNota_2($_POST["nota_2"]);
$objNotas->setNota_3($_POST["nota_3"]);
$objNotas->agregarNotas($objNotas->getIdAlumnos(),$objNotas->getIdRamos(),$objNotas-
>getNota_1(),$objNotas->getNota_2(),$objNotas->getNota_3());
//$objNotas->agregarNotas($_POST["alumnos"],$_POST["ramos"],$_POST["nota_1"],
$_POST["nota_2"],$_POST["nota_3"]);
}
?>
CLASE RAMOS
<?php
require_once("conexion.php");
class ramos
{
private $vistas;
private $nombre;
$objRamos->setNombre($_POST["nombre"]);
$objRamos->agregarRamos($objRamos->getNombre());
//$objRamos->agregarRamos($_POST["nombre"]);
}
?>
INDEX.JS
function menu(opcion)
{
if(opcion == 1)
{
window.location.href='alumnos.html';
}
else if(opcion == 2)
{
window.location.href='ramos.html';
}
else if(opcion == 3)
{
window.location.href='notas.php';
}
else if(opcion == 4)
{
window.location.href='buscar.php';
}
}
function ingresarNota()
{
var alumnos = document.getElementById('alumnos').value;
var ramos = document.getElementById('ramos').value;
var nota_1 = document.getElementById('nota_1').value;
var nota_2 = document.getElementById('nota_2').value;
var nota_3 = document.getElementById('nota_3').value;
if(alumnos == "")
{
alert("seleccione un Alumno");
return false;
}
else if(ramos == "")
{
alert("seleccione un Ramo");
return false;
}
else if(nota_1 == "")
{
alert("Ingrese la Primera Nota");
return false;
}
else if(nota_1 == "")
{
alert("Ingrese la Segunda Nota");
return false;
}
else if(nota_1 == "")
{
alert("Ingrese la Tercera Nota");
return false;
}
else
{
document.form.submit();
}
}
function buscar()
{
var alumnos = document.getElementById('alumnos').value;
if(alumnos == "")
{
alert("seleccione un Alumno");
return false;
}
else
{
document.form.submit();
}
}
Ahora bien, luego de la creación del sistema, se requiere que responda lo siguiente:
- Las características de POO corresponden a las clases, variable e instancias de objetos con los
cuales fue realizada la aplicación.
2. Indique cuáles son las clases y los objetos creados en su sistema y diga cuál es la diferencia entre
ellos (2 puntos).
Clase nota
Clase Alumno
Clase Ramos
Clase conexión
La diferencia entre todas las clases es que cada una esta ligada a un objeto independiente del
otro tiene acceso a diferentes tablas en la base de datos y escriben datos en sus respectivas
tablas sin traslaparse una de otra.
3. Indique cómo están conformadas las clases de su sistema web (2 puntos).
cada una de estas clases esta identificada con un ID único representado en la base de datos
Clase conexión: es la encargada de conectar nuestro FRONT END con la base de datos ubicada en
nuestro BACK END.
Clase alumno :
class alumnos
{
private $vistas;
private $codigo;
private $nombre;
private $apellido;
private $edad;
Clase nota:
private $vistas;
private $idAlumnos;
private $idRamos;
private $nota_1;
private $nota_2;
private $nota_3;
Clase Ramos:
private $vistas;
private $nombre;
Bibliografía