Hacer un backend al que le pasemos por POST dos parámetros:
Importe y Plazos
El Backend creará una tabla con tantos elementos como plazo y los valores serán:
primer elemento: Importe/plazo*1.2
Segundo: Importe/plazo*1.2
Tercero: Importe/plazo*1.1
Cuarto: Importe/Plazo*1.1
Resto: Importe/Plazo
El backend devuelve la tabla como JSON
Tendremos un fronend con dos campos: Importe y Plazos y un botón de calcular. Cuando le de a calcular llamará al backend, recuperará la tabla, la convertirá a tabla de javascript y la imprimirá como una lista (ul) en un div.
$importe = filter_input(INPUT_POST, "importe"); $plazo = filter_input(INPUT_POST, "plazos"); $tabla = []; $cantidad = $importe / $plazo; for ($i = 0; $i < $plazo; $i++) { if ($i < 2) { $tabla[] = round($cantidad * 1.2,2); } elseif ($i < 4) { $tabla[] = round($cantidad * 1.1,2); } else { $tabla[] = round($cantidad,2); } } /* array_walk($tabla, function(&$valor){ $valor= round($valor,2); });*/ echo json_encode($tabla);
Importe:<input type="text" id="importe"><br/> Plazos:<input type="text" id="plazos"><br/> <button id="ajax">Pulsa aquí para probar el ajax</button> <div id="resultado"></div> <script> $(function(){ console.log("Página cargada"); $('#ajax').click(function(){ console.log("Pulsado"); $.post("ajax_backend.php", {"importe":$("#importe").val(), "plazos":$("#plazos").val()}, function(data){ console.log("resultado "+data); var objeto=JSON.parse(data); $('#resultado').html("<ul>"); for(prop in objeto){ $('#resultado').append("<li>"+objeto[prop]+"</li>"); } $('#resultado').append("</Ul>"); }); }); }); </script>