Foros del Web » Programando para Internet » PHP »

error en el formulario

Estas en el tema de error en el formulario en el foro de PHP en Foros del Web. Estoy siguiendo un tutorial para aprender como funcionan los formularios, pero estoy atascada en un ejemplo. El formulario form.htm ------------------------------------------------------------------------ <HTML> <BODY> <FORM METHOD="post" ACTION="mis_datos.php"> ...
  #1 (permalink)  
Antiguo 27/06/2003, 14:15
Avatar de amanda75  
Fecha de Ingreso: junio-2003
Ubicación: cerca, pero no mucho
Mensajes: 684
Antigüedad: 20 años, 9 meses
Puntos: 0
error en el formulario

Estoy siguiendo un tutorial para aprender como funcionan los formularios, pero estoy atascada en un ejemplo.

El formulario form.htm

------------------------------------------------------------------------
<HTML>

<BODY>

<FORM METHOD="post" ACTION="mis_datos.php">

<input type="hidden" name="edad" value="55">

<p>Tu nombre <input type="text" name="nombre" size="30" value="jose"></p>

<p>Tu sistema favorito

<select size="1" name="sistema">

<option selected value="Linux">Linux</option>

<option value="Unix">Unix</option>

<option value="Macintosh">Macintosh</option>

<option value="Windows">Windows</option>

</select></p>

<p>¿Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p>

<p>¿Cual es tu sexo?</p>

<blockquote>

<p>Hombre<input type="radio" value="hombre" checked name="sexo"></p>

<p>Mujer <input type="radio" name="sexo" value="mujer"></p>

</blockquote>

<p>Aficiones</p>

<p><textarea rows="5" name="aficiones" cols="28"></textarea></p>

<p><input type="submit" value="Enviar datos" name="enviar">

<input type="res-left: 50"> <input type="reset" value="Restablecer" name="B2"></p>

</FORM>

</BODY>

</HTML>
------------------------------------------------------------------------

y mis_datos.php

-------------------------------------------------------------------------

<?PHP

if ($enviar) {

echo "Hola <b>" . $nombre . "</b> que tal estás<BR>\n";

echo "Eres " . $sexo . "<BR>\n";

echo "Tienes " . $edad . "<BR>\n";

echo "Tu sistema favorito es " . $sistema . "<BR>\n";

if ($futbol) {

echo "Te gusta el futbol <BR>\n";

} else {

echo "NO te gusta el futbol <BR>\n";

}

if ($aficiones != "") {


echo "Tus aficiones son: <BR>\n";

echo nl2br($aficiones);

} else {

echo "NO tienes aficiones <BR>\n";

}

echo "<a href='$PHP_SELF'>VOLVER AL FORMULARIO</a>"



} else

<HTML>

<BODY>

<FORM METHOD="post" ACTION=<?PHP echo $PHP_SELF ?>

<input type="hidden" name="edad" value="55">

<p>Tu nombre <input type="text" name="nombre" size="30" value="jose"></p>

<p>Tu sistema favorito

<select size="1" name="sistema">

<option selected value="Linux">Linux</option>

<option value="Unix">Unix</option>

<option value="Macintosh">Macintosh</option>

<option value="Windows">Windows</option>

</select></p>

<p>¿Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p>

<p>¿Cual es tu sexo?</p>

<blockquote>

<p>Hombre<input type="radio" value="hombre" checked name="sexo"></p>

<p>Mujer <input type="radio" name="sexo" value="mujer"></p>

</blockquote>

<p>Aficiones</p>

<p><textarea rows="5" name="aficiones" cols="28"></textarea></p>

<p><input type="submit" value="Enviar datos" name="enviar">

<input type="reset" value="Restablecer" name="B2"></p>

</FORM>

</BODY>

</HTML>



<?PHP

} //fin IF

?>

-----------------------------------------------------------------------

¿alguien sabe en qué me estoy equivocando?

Gracias
  #2 (permalink)  
Antiguo 27/06/2003, 14:31
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16
Hola,

Fijate en esta parte:
Código PHP:
}

echo 
"<a href='$PHP_SELF'>VOLVER AL FORMULARIO</a>"



} else

<
HTML
Estas pasando de codigo PHP a codigo HTML. Debes cerrar el PHP. Asi:
Código PHP:
<?php 
...
}

echo 
"<a href='$PHP_SELF'>VOLVER AL FORMULARIO</a>"



} else { // <-- tambien te faltaba esta llave
?>
<HTML>
Saludos.

PD: Hay otra forma de meter codigo HTML dentro de codigo PHP. Es la sintaxis HEREDOC (http://www.php.net/manual/en/language.types.string.php)
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 27/06/2003, 14:43
Avatar de amanda75  
Fecha de Ingreso: junio-2003
Ubicación: cerca, pero no mucho
Mensajes: 684
Antigüedad: 20 años, 9 meses
Puntos: 0
Hola josemi, me sigue dando error

Parse error: parse error, expecting `','' or `';'' in /home/portal/mis_datos.php on line 40


la linea 40 es la de ese else. Siempre me da error en esa linea, llevo un par de horas cambiando las posibles combinaciones, pero no hay manera.

Edito con el Dreamweaver, cuando lo escribo así tambien me da error en esta linea

<FORM METHOD="post" ACTION=<?PHP echo $PHP_SELF ?>
  #4 (permalink)  
Antiguo 27/06/2003, 16:46
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16
Leccion de errores: el error que te indica PHP es en la linea que te dice o en alguna de las anteriores.

Si te fijas se te ha olvidao el ; en
Código PHP:
echo "<a href='$PHP_SELF'>VOLVER AL FORMULARIO</a>" 
ponle el ; al final.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 27/06/2003, 17:31
Avatar de amanda75  
Fecha de Ingreso: junio-2003
Ubicación: cerca, pero no mucho
Mensajes: 684
Antigüedad: 20 años, 9 meses
Puntos: 0
No me termina de salir

En el DW me aparece como error

<FORM METHOD="post" ACTION=<?PHP echo $PHP_SELF ?>

y cuando envio datos con el formulario, no me sale ya el mensaje de error, pero me dice que no encuentra la página y en la barra de navegacion aparece escrito esto:


portal/<input

  #6 (permalink)  
Antiguo 28/06/2003, 10:04
Avatar de camargo  
Fecha de Ingreso: abril-2002
Ubicación: Kerétaro, Méjiko
Mensajes: 1.045
Antigüedad: 21 años, 11 meses
Puntos: 2
pues,, claro no haz ceerrado el FORM!!!

<form method="post" action="<? echo $PHP_SELF; ?>">

Podrias colorear el codigo con la func [ P H P ] !!! para ver en que estas mal..
__________________
http://www.chorcha.com
  #7 (permalink)  
Antiguo 29/06/2003, 04:10
Avatar de amanda75  
Fecha de Ingreso: junio-2003
Ubicación: cerca, pero no mucho
Mensajes: 684
Antigüedad: 20 años, 9 meses
Puntos: 0
Por fin , Gracias a los dos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:28.