Foros del Web » Programando para Internet » PHP »

extructura de control

Estas en el tema de extructura de control en el foro de PHP en Foros del Web. que es lo que esta mal ?? <html> <body> <br><br><br><br><br> <form method=POST action=pagina.php> <p align=center><input type=text name=username size=20></p> <p align=center><input type=password name=password size=20></p> <p align=center><input ...
  #1 (permalink)  
Antiguo 22/12/2005, 16:38
 
Fecha de Ingreso: noviembre-2002
Mensajes: 96
Antigüedad: 15 años
Puntos: 0
extructura de control

que es lo que esta mal ??

<html>
<body>
<br><br><br><br><br>
<form method=POST action=pagina.php>
<p align=center><input type=text name=username size=20></p>
<p align=center><input type=password name=password size=20></p>
<p align=center><input type=submit value=Enviar ></p>
</form>
</body>
</html>
<?
$username=$_POST["username"];
$password=$_POST["password"];


$destino= "[email protected]";
$error = "Faltan datos - Debes completar todos los campos";
$asunto = "Bienvenido!!!";
$msg .= "Usuario: $username\n";
$msg .= "Password: $password\n";
$msg .= "USER AGENT: ".$HTTP_USER_AGENT."\n";
$msg .= "IP: ".$REMOTE_ADDR."\n";

if(isset($_POST[enviar]))
{
if(!empty($_POST['username']) && !empty($_POST['passwod']))
{
echo "$error";

}
else
{

mail("$destino","$asunto","$msg","FROM: [email protected]\n\n\n");

echo "mensaje enviado";

?>

osea intento comprobar que los datos user y pass no queden vacios
pero esta empeñado en que le falta algo, y me da error
__________________
el chute
  #2 (permalink)  
Antiguo 23/12/2005, 05:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Y que "error" te dá exactamente? .. de PHP? o de tu lógica (de ese IF que tienes por ahí?

Por cierto ...
Cita:
<form method=POST action=pagina.php>
<p align=center><input type=text name=username size=20></p>
<p align=center><input type=password name=password size=20></p>
<p align=center><input type=submit value=Enviar ></p>
</form>
Por qué no usas las comillas en los tag's HTML que lo necesitan? (en general TODOS los que ahí tienes) .. Si no los usas .. puedes tener problemas más adelante. USALOS y respeta la sintax de cada lenguaje (sea HTML, Javasacript, PHP o lo que uses).

Y ...

ciera el if() con su else .. } (despues de tu echo "mensaje enviado")

Otro detalle:
<p align=center><input type=submit value=Enviar ></p>

tu haces
if (isset($_POST['enviar']))

Es decir . .te basas en la "existencia" de la variable que venga de tu formulario en metodo POST "enviar".

En la definición de tu "botón" de "enviar" .. das un "value" para que veas el nombre del botón como "Enviar" pero no defines el "nombre" del botón que en tu caso debería ser name="enviar"

<p align="center"><input type="submit" name="enviar" value="Enviar" ></p>

Un saludo,
  #3 (permalink)  
Antiguo 23/12/2005, 06:23
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 12 años, 9 meses
Puntos: 17
Destaco otro error, pero de tipeo que hace que nunca envíe el mail

if(!empty($_POST['username']) && !empty($_POST['passwod']))
  #4 (permalink)  
Antiguo 23/12/2005, 17:31
 
Fecha de Ingreso: noviembre-2002
Mensajes: 96
Antigüedad: 15 años
Puntos: 0
gracias

Seppo, si fue un error tipografico gracias por tu observacion igual
Cluster, ademas de las "" el boton y la llave
me falto imprimir el error
----------------------------
{
$error='Faltan datos - Debes completar todos los campos';
}
---------------------------
<?
if(!empty($error))
{
print "<font class='error'>$error</font>";
}
?>

ahora funciona de maravilla, gracias a ambos y felices fiestas!!
__________________
el chute
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 10:19.