Está en la página 1de 13

PHP, MySQL

Jesús De La Fuente Vergara

Programación Web II

Instituto IACC

12-07-2021
Desarrollo

1.- Para el trabajo de esta semana desarrolle un formulario en HTML que incluye los campos ,

Patente, Numero Motor, Numero Chasis , Marca, Modelo , Año , Color y Valor de acuerdo con

el siguiente código.

Además de un botón guardar que al clicarlo me permite correr una función creada por mí en

JavaScript llamada “validación y guardado”. El código anterior reproduce el siguiente

formulario:
Además, es necesario comentar que para este control fue necesario levantar un entorno virtual de

apache para poder usar las funciones de PHP. Esto lo genere con XAMPP
2.- Una vez creado el formulario me centre en mi función en JavaScript que me valida los

campos Matricula y Año.

Existen varias maneras de “controlar” los datos ingresados a través de un atributo de la etiqueta

Input en HTML (minlength y maxlength respectivamente (1)(2)) sin embargo, el control solicita

que se haga por JavaScript por lo que se construyó la siguiente función:

En la anterior por JavaScript obtengo por id los valores de Patente y Año Fabricación con la

función “.value” y luego valido para patente que su largo debe ser mayor a 5 y distinto a vacío y

lo mismo para el año de fabricación que debe ser mayor a 3 dígitos, esto se muestra de esta

manera en el formulario:
Lo mismo para los campos vacíos :

3.- Para este punto consideré un formulario que envío utilizando la variable global $_POST (3),

de esta manera una vez que se presione el botón guardar no solo valide a través de JavaScript

sino que además envíe estos datos por $_POST a un formulario que lo reciba. El documento PHP

que recibe los datos lo creé de la siguiente manera:


Donde lo primero que hice fue crear variables publicas para almacenar los datos obtenidos por

POST y además funciones GET para poder escribir estos datos o almacenarlos en alguna variable

u objeto, en este caso en el objeto “AUTO” y luego imprimiendo los valores guardados en cada

una de las variables del objeto “$objAuto” de acuerdo con la siguiente imagen:
Además, como lo solicita el control, creé una función “Set” esta función “setValor” me permite

modificar por PHP el valor recibido, en este caso lo “seteo” al momento de imprimir los valores

del formulario de acuerdo con el siguiente ejemplo:


En la ultima imagen se puede validar que se cambia el valor de 10.000.000 enviados en el primer

formulario por 9.990.000 seteados en el formulario PHP donde se reciben los datos a través de

una función “SET”.

A continuación, el código de ambos formularios.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script
    src="https://code.jquery.com/jquery-3.6.0.js"
    integrity="sha256-H+K7U5CnXl1h5ywQfKtSj8PCmoN9aaq30gDh27Xc0jk="
    crossorigin="anonymous"></script>
    <title>Document</title>
    
</head>

<body>
<div>
    <H1>Programación Web II</H1>
    <p>Control Semana 5</p>
    <span style="font-weight:bold;">Mi Auto</span>
   
<form action="DatosAuto.php" method="POST" name="Auto">

    <p>Ingrese los datos solicitados de su vehiculo</p>
        <div>Patente <input type="text" name="patente" id="Patente"></input></di
v>
        <div>Numero Motor <input type="text" name ="numeromotor" id="NMotor"></i
nput></div>
        <div>Numero Chasis <input type="text" name="numerochasis" id="NChasis"><
/input></div>
        <div>Marca <input type="text" id="Marca" name="marca" ></input></div>
        <div>Modelo <input type="text" id="Modelo" name="modelo"></input></div>
        <div>Año (Escríbalo en numeros) <input type="text" name="año" id="AñoF" 
maxlength="4"></input></div>
        <div>Color <input type="text" id="Color" name="color"></input></div>
        <div>Valor <input type="text" id="Valor" name="valor"></input></div>
    <span>Al pinchar el siguiente boton se guardaran los datos de su vehiculo </
span>
    <input type="submit" value='Guardar' name="submit" onclick="ValidacionYGuard
ado();">
</form>
</div>
</body>

<script type="text/javascript">

    function ValidacionYGuardado() {
        let Patente = document.getElementById('Patente').value
        let AñoFabricacion = document.getElementById('AñoF').value
        let GuardarPatente ="true"
        let GuardarAnoF = "true"
        
        if(Patente.length <= 5 && Patente !==""){
            alert("La patente debe incluir al menos 6 digitos")
        GuardarPatente = "False"
        }
        if(AñoFabricacion.length <=3 && AñoFabricacion !==""){
            alert("debe ingresar al menos 4 caracteres para definir el año de fa
bricación")
            GuardarAnoF="false"
        }
        if(Patente ==""){
            alert("Debe ingresar patente del vehiculo para continuar")
        }
        if(AñoFabricacion== ""){
            alert("debe ingresar año de fabricacion")
        }}
</script>
</html>

<?php
class Auto
{
    public $_patente;
    public $_NumeroMotor;
    public $_NumeroChasis;
    public $_Marca;
    public $_Modelo;
    public $Año;
    public $Color;
    public $Valor;

    public function __construct()
    {
        $this->_patente = $_POST['patente'];
        $this->_NumeroMotor = $_POST['numeromotor'];
        $this->_NumeroChasis = $_POST['numerochasis'];
        $this->_Marca = $_POST['marca'];
        $this->_Modelo = $_POST['modelo'];
        $this->_Año = $_POST['año'];
        $this->_Color = $_POST['color'];
        $this->_Valor = $_POST['valor'];

    }
    public function getPatente()
    {
        return $this->_patente;
    }
    public function getMotor()
    {
        return $this->_NumeroMotor;
    }
    public function getChasis()
    {
        return $this->_NumeroChasis;
    }
    public function getMarca()
    {
        return $this->_Marca;
    }
    public function getModelo()
    {
        return $this->_Modelo;
    }
    public function getAño()
    {
        return $this->_Año;
    }
    public function getColor()
    {
        return $this->_Color;
    }
    public function getValor()
    {
        return $this->_Valor;
    }
    public function setValor($Valor)
    {
        $this->_Valor = $Valor;
    }
}

$objAuto = new Auto();

echo "La patente del vehiculo es: ".$objAuto->getPatente(). "<br/>";
echo "el numero de motor es: " .$objAuto->getMotor(). "<br/>";
echo "el número de chasis es:" .$objAuto->getChasis(). "<br/>";
echo "La marca es: ".$objAuto->getMarca(). "<br/>";
echo "El modelo es: ".$objAuto->getModelo(). "<br/>";
echo "El Año de fabricación es: " .$objAuto->getAño(). "<br/>";
echo "El Color es: " .$objAuto->getColor(). "<br/>";
echo "El Valor es: " .$objAuto->getValor(). "<br/>";
echo "El Valor es : ".$objAuto->setValor("9.990.000");
echo "El Valor es: " .$objAuto->getValor(). "<br/>";
?>
Bibliografía

1. https://developer.mozilla.org/es/docs/Web/HTML/Attributes/minlength

2. https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength

3. https://www.baulphp.com/metodo-post-en-lenguaje-php/

También podría gustarte