PHP - Ayuda cargar datos en un array tomado datos de un formulario

 
Vista:
Imágen de perfil de Juan Jose
Val: 15
Ha aumentado su posición en 11 puestos en PHP (en relación al último mes)
Gráfica de PHP

Ayuda cargar datos en un array tomado datos de un formulario

Publicado por Juan Jose (9 intervenciones) el 02/11/2016 22:51:41
Hola a todos , tengo una duda que no se si me podreis resolver , Estoy comenzando en esto del php, y me he atascado.

Estoy creando una aplicacion para practicar en la que mediante un formulario, cargo un array asociativo de nombre y telefono.

El funcionamiento es el siguente:

Se carga el formulario creando el array con nombre y telefono.

al pulsar el boton de enviar, guardamos los datos en el array tomados de los inputtext , y el array a su vez en un campo hidden que se enviara por post a esta misma pagina , que mostrara en una tabla dicho contenido,

Pues bien tengo problemas, no se si se guardan los datos en el array, cuando pulso el boton de enviar, por lo cual no me carga los datos en la tabla mostrandome los datos del array.

Este es el codigo

index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<html>
    <head>
        <meta charset="UTF-8">
        <title> Mi Primera Agenda en PHP </title>
        <!-- Asociamos a css-->
        <link type="text/css" rel="stylesheet" href="cssestilo.css">
        <!-- Asociamos a funciones php-->
        <?php include 'funciones.php'; ?>
    </head>
    <body>
        <h1>
            <?php
            echo "Mi Primera Agenda PHP";
            ?>
            <br>
        </h1>
        <div>
            <!--llamar al mismo formulario -->
            <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
                <?php
                //creacion del array para guardar los datos            
                $agenda = array();
                //comprobamos que no ha enviado un array vacio, si tiene datos lo deserializamos
                if (!empty($_POST['$agenda'])) {
                    $agenda = unserialize($_POST[$agenda]);
                }
                //y cargamos los datos de la agenda en el array , si el nombre no esta vacio
                if (!empty($_POST['nombre'])) {
 
                    $agenda [$_POST['nombre']] = $_POST['telefono'];
                }
                //agenda con datos
                //$agenda = array('Juan' => '123456789', 'Paco' => '123456789', 'Manuel' => '123456789',);
                //mostramos los datos en el formulario
                mostrar($agenda);
                ?>
 
                <!--campo oculto para guardar los datos el array que reenviaremos a esta misma pagina cuando enviemos-->
                <input type="hidden" name="array" value="<?echo htmlentities (serializable ($agenda));?>"
                       <br>
                <div>
                    <table border="1" id="tabladatos">
                        <tbody>
                            <tr text-aling="center">
                                <td colspan="2" ><h3>Insertar usuario</h3></td>
                            </tr>
                            <tr>
                                <td><h4>Nombre</h4><input type="text" name="fnombre"></td>
                                <td><h4>Telefono</h4><input type="text" name="ftelefono"></td>
                            </tr>
                            <tr>
                                <td colspan="2"><input type="submit" name="submit" value="Enviar"></td>
                            </tr>
                        </tbody>
                    </table>
                </div>
            </form>
    </body>
</html>

Agradeceria mucho la ayuda prestada, ya que llevo tiempo con esto y no se como seguir.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ayuda cargar datos en un array tomado datos de un formulario

Publicado por xve (6935 intervenciones) el 03/11/2016 07:54:42
Hola Juan Jose, he encontrado bastantes errores... te adjunto el código modificado para que veas la diferencia...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<html>
    <head>
        <meta charset="UTF-8">
        <title> Mi Primera Agenda en PHP </title>
        <!-- Asociamos a css-->
        <!-- Asociamos a funciones php-->
    </head>
    <body>
        <h1>
            <?php
            echo "Mi Primera Agenda PHP";
            ?>
            <br>
        </h1>
        <div>
            <!--llamar al mismo formulario -->
            <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
                <?php
                //creacion del array para guardar los datos            
                $agenda = array();
                //comprobamos que no ha enviado un array vacio, si tiene datos lo deserializamos
                if (isset($_POST["array"]) && $_POST["array"]) {
					echo $_POST["array"];
                    $agenda = unserialize(stripslashes($_POST["array"]));
//                     echo "K";
                }
                //y cargamos los datos de la agenda en el array , si el nombre no esta vacio
                if (!empty($_POST['fnombre'])) {
 
                    $agenda [$_POST['fnombre']] = $_POST['ftelefono'];
                }
                //agenda con datos
                //$agenda = array('Juan' => '123456789', 'Paco' => '123456789', 'Manuel' => '123456789',);
                //mostramos los datos en el formulario
                ?>
 
                <!--campo oculto para guardar los datos el array que reenviaremos a esta misma pagina cuando enviemos-->
                <input type="hidden" name="array" value='<?php echo serialize($agenda);?>'>
                       <br>
                <div>
                    <table border="1" id="tabladatos">
                        <tbody>
                            <tr text-aling="center">
                                <td colspan="2" ><h3>Insertar usuario</h3></td>
                            </tr>
                            <tr>
                                <td><h4>Nombre</h4><input type="text" name="fnombre"></td>
                                <td><h4>Telefono</h4><input type="text" name="ftelefono"></td>
                            </tr>
                            <tr>
                                <td colspan="2"><input type="submit" name="submit" value="Enviar"></td>
                            </tr>
                        </tbody>
                    </table>
                </div>
            </form>
        </div>
    </body>
</html>

Cualquier duda...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Juan Jose
Val: 15
Ha aumentado su posición en 11 puestos en PHP (en relación al último mes)
Gráfica de PHP

Ayuda cargar datos en un array tomado datos de un formulario

Publicado por Juan Jose (9 intervenciones) el 03/11/2016 11:10:38
Muchas gracias, ya funciona perfectamente


estoy empezando en el lenguaje de php realizando un modulo de fp de desarrollo de app web, y gracias a tu ayuda puedo seguir con la tarea.

Ahora estudiare los cambios que has realizado para entender lo que has echo.

En serio, muchas gracias.

Tengo algunos conocimientos de java y android y resolvi una duda en el foro de android, y espero algun dia tb resolver dudas de php por aqui, y no solo plantearlas. jajaja
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar