Diferencia entre revisiones de «Usuario:ManuelRomero/NewPHP/formularios/Ejercicios/Ejercicio2»

De WikiEducator
Saltar a: navegación, buscar
 
Línea 1: Línea 1:
 +
<font size=4 color=red>[[Usuario:ManuelRomero/NewPHP/B2T1/formularios/ejercicios | Volver]]</font>
 +
 
;La imagen siguiente ilustra el objetivo de este ejercicio.#
 
;La imagen siguiente ilustra el objetivo de este ejercicio.#
 
En ella vemos una tira de distintas capturas de imagen
 
En ella vemos una tira de distintas capturas de imagen
Línea 8: Línea 10:
 
##Observamos como se actualiza la lista
 
##Observamos como se actualiza la lista
 
[[Imagen:funcionamientoListaAccesos2.png]]
 
[[Imagen:funcionamientoListaAccesos2.png]]
<font size=4 color=red>[[Usuario:ManuelRomero/NewPHP/B2T1/formularios/ejercicios | Volver]]</font>
+
 
 
;Ahí pongo un posible código que da solución al problema planteado
 
;Ahí pongo un posible código que da solución al problema planteado
 
<source lang=php>
 
<source lang=php>

Última revisión de 18:34 3 nov 2016

Volver

La imagen siguiente ilustra el objetivo de este ejercicio.#

En ella vemos una tira de distintas capturas de imagen

  1. Primero insertamos el nombre maría
    1. Al hacer submit vemos como aparece en la lista el nombre con un acceso
  2. Posteriormente insertamos otra vez el nombre maria
    1. Aparece ahora el mismo nombre con dos accesos
  3. Posteriormente insertamos otros nombres (pedro una vez y Nieves dos veces)
    1. Observamos como se actualiza la lista

FuncionamientoListaAccesos2.png

Ahí pongo un posible código que da solución al problema planteado
<!DOCTYPE html>
<html>
    <head>
        <meta charset="ISO-8859-1">
        <title></title>
    </head>
    <body/>
    <?php
 
    if ( $_POST[ 'enviar' ] ) {
        //Leo el array de nombres que vienen en campos ocultos
        $listaAccesos = ($_POST[ 'listaAccesos' ]) ? $_POST[ 'listaAccesos' ] : [ ];
        //Observa que este operado ternario es lo mismo que hacer
            // if ($_POST['listaAccesos']==null)
            //     $listaAccesos = []; o su equivalente  $listaAccesos=array();
            // else
            //     $listaAccesos =$_POST[ 'listaAccesos' ]
 
        //Leo en nuevo nombre y lo agrego al array
        //Si ya existiera la entrada simplemento modifico el valor de ese índice
    $nuevoAcceso = $_POST[ 'nombre' ] ? $_POST[ 'nombre' ] : "vacio";
 
    $listaAccesos[ $nuevoAcceso ] ++;
    }
 
    ?>
    <form action="listaAccesos.php" method=POST>
        <fieldset>
            <legend>Datos de acceso </legend>
            Nombre
            <input type="text" name="nombre" />
            <br/>
            <br/>
            <input type="submit" value="Acceder al sitio web" name="enviar" />
            <?php
 
            //Añado los input de tipo hidden con el contenido del array y visualizo
            echo "<hr/>Accesos hasta el momento <hr/>";
            foreach ( $listaAccesos as $nombre => $acceso ) {
                echo" <input type='hidden' name='listaAccesos[$nombre]'  value='$acceso' />";
                echo "$nombre : $acceso";
                echo "<br/>";
            }
 
 
 
            ?>
    </form>
 
</fieldse>
</form>
 
 
 
</body>
</html>
 
</php>