> Faqs > ¿Por qué no imprime?

¿Por qué no imprime?

Tengo que hacer un formulario que al enviar los datos nombre y telefono me los imprima en la parte datos agenda, además si el nombre está vacío tiene que imprimir un error.

<html>
<head>
    <meta charset="iso-8859-1">
    <meta name="description" content="Ejemplo de HTML5">
    <meta name="keywords" content="HTML5, CSS3, JavaScript">
    <title>agenda</title>
    <link rel="stylesheet" href="misestilos.css">
</head>
<body>
    <h1 align="center">AGENDA</h1>
        <section>

            <?php
                if($_REQUEST["nombre"] == ""){
                    print "<p>El nombre es Obligatorio!!!</p>";
                }
            ?>
        
            <form action="tarea.php" name="agenda" method="get">
                <fieldset>
                    <legend>Datos agenda</legend>
                    <?php
                        //evaluar si el boton Añadir contactos ha sido enviado y no se encuentra vacio
                        
                        if(isset($_GET["Añadir contactos"])&&!empty($_GET["Añadir contactos"])){
                            $nombres = $_GET["nombre"];
                            $telefonos = $_GET["telefono"];
                        
                        //con estas líneas quiero que imprima lo que hay dentro de $nombres y $telefonos
                        
                            echo "<b>".$nombres."</b>";
                            echo "<b>".$telefonos."</b>";
                        }
                    ?>
                </fieldset>
                <fieldset>
                    <legend>Nuevo contacto</legend>
                        <p>Nombre: <input type="text" name="nombre"></p>
                        <p>Telefono: <input type="tel" name="telefono"></p>
                        <input type="submit" name="Añadir contactos" value="Añadir contactos" method="get"></input>
                        <input type="reset" name="Limpiar campos" value="Limpiar campos"></input><!--no se si este boton es así para vaciar-->
                        
                </fieldset>
                <fieldset>
                    <legend>Vaciar agenda</legend>
                        <input type="reset" name="Vaciar" value="Vaciar"></input><!--no se si este botón es así para vaciar-->
                </fieldset>
            </form>
        </section>
</body>
</html>
¿Qué array? ¿Dónde está la línea que no te lo imprime? No expliques cosas que no sean necesarias para entender tu problema ni partes del código que no interesan, para que no se tenga q leer todo... Edita la pregunta por favor.

Respuestas

Has verificado esto:

  • Qué está entrando en el if
if(isset($_GET["Añadir contactos"])&&!empty($_GET["Añadir contactos"])){

Igual no imprime nada porque no está entrando en ese if.

  • Que estás recibiendo bien este dato "Añadir contactos"

Porque la "ñ" en el nombre del campo te puede dar problemas, sobre todo cuando trabajas por GET, ya que en las URL en principio no se permiten acentos y caracteres especiales en general

Luego te recomiendo hacer un var_dump() para ver que realmente es un array como piensas porque creo que $nombre no es un array, ya que viene de un campo de texto común.

Miguel Angel
3140 140 209 17