15. Ejercicios de práctica:
Reto 1: Me costó bastante porque quise que se crearan de manera dinámica cada cosa (de acuerdo a la cantidad ingresada de productos, se fabriquen los input), y luego en base a los productos ingresados se muestre el resultado.
Hice tres archivos y el resultado es el siguiente:
Código reto3.php
:
<form action="proceso_productos.php" method="post">
<label for="">Indicar cantidad de productos a ingresar:</label><br>
<input type="number" name="productsQuantity" id="">
<button type="submit">Enviar</button>
</form>
Código proceso_productos.php
:
<?php
$productsQuantitys = $_POST["productsQuantity"];
$form = "<form action='proceso_productos_final.php' method='post'>";
for($i=0; $i<$productsQuantitys; $i++) {
$form .= "Ingresar precio de producto " . ($i+1) . ": " .
"<input type='number' name='product" . $i . "'><br>";
}
$button = "<button type='submit'>Enviar</button>";
$formCierre ="</form>";
$tempi = $productsQuantitys;
echo $form.$button.$formCierre;
Código proceso_productos_final.php
:
<?php
for($i=0; $i<count($_POST); $i++) {
echo "Nuevo precio de producto " . ($i+1) . ": $".
($_POST["product$i"] - ($_POST["product$i"] * 0.35)) .
"<br>";
}
Reto 2:
El segundo ejercicio fue un tanto similar, al inicio establecí el tamaño, luego, multipliqué largo por ancho para saber su tamaño final, y ordené el array de mayor a menor, finalmente imprimiendo el resultado.
Hice también 3 archivos, viéndose así:
Comparto el código de los retos:
entry.html
:
<!DOCTYPE html>
<html lang="es">
<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">
<title>Entrada de productos</title>
</head>
<body>
<main>
<form action="size_data_entry.php" method="post">
<label for="">Indicar cantidad de productos a ingresar en la web:</label><br>
<input type="number" name="productsQuantity" id="">
<button type="submit">Enviar</button>
</form>
</main>
</body>
</html>
size_data_entry.php:
<?php
$productsQuantity = $_POST["productsQuantity"];
$form = "<form action='final_result.php' method='post'>";
for($i=0; $i<$productsQuantity; $i++) {
$form .= "Ingresar alto de producto " . ($i+1) . ": " .
"<input type='number' name='productHeight" . $i . "'><br>" .
"Ingresar ancho de producto " . ($i+1) . ": " .
"<input type='number' name='productWidth" . $i . "'><br>";
}
$button = "<button type='submit'>Enviar</button>";
$formCierre ="</form>";
echo $form.$button.$formCierre;
final_result.php
:
<?php
$finalSizeArray = [];
for($i=0; $i<(count($_POST)/2); $i++) {
$finalSizeArray[$i] = ($_POST["productHeight$i"]*$_POST["productWidth$i"]);
}
array_multisort($finalSizeArray, SORT_DESC);
$i = 1;
foreach($finalSizeArray as $value) {
echo "Figura $i, mide $value<br>";
$i++;
}
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?