Foros del Web » Programando para Internet » PHP »

Validar campos de formulario

Estas en el tema de Validar campos de formulario en el foro de PHP en Foros del Web. Hola tengo este formulario, es muy sencillo. Deseo saber como hago para que no envie el mensaje si los campos estan en blanco. gracias Código ...
  #1 (permalink)  
Antiguo 28/09/2004, 08:21
Avatar de Erikzamith  
Fecha de Ingreso: septiembre-2003
Ubicación: Suecia
Mensajes: 75
Antigüedad: 14 años, 3 meses
Puntos: 0
Validar campos de formulario

Hola tengo este formulario, es muy sencillo.
Deseo saber como hago para que no envie el mensaje si los campos estan en blanco. gracias

Código HTML:
 <form name="Contacto" method="post" action="aximail.php">
        <table width="312" border="0" cellspacing="0" cellpadding="0" height="69" align="center">
          <tr> 
            <td valign="top"> 
              <h5 align="center"><b><font color="#00FF00" face="Tahoma">Namn:</font></b> 
                <input name="Namn" type="text" id="Namn" size="30">
              </h5>
              <h5 align="center"><b><font color="#00FF00" face="Tahoma">E-post:</font></b> 
                <input name="epost" type="text" id="epost" size="35">
              </h5>
              </td>
          </tr>
        </table>
        <h5 align="center"><b><font color="#00FF00" face="Tahoma">Meddelande:</font></b> 
          <textarea name="Meddelande" cols="40" rows="5"></textarea>
        </h5>
        <p align="center"><font size="2" face="Arial, Helvetica, sans-serif"><b> 
          <input type="hidden" name="receptor" value="[email protected] ">
          <input type="hidden" name="remitente" value="[email protected] ">
          </b></font> 
          <input type="submit" name="Submit" value="Skicka">
          <font size="2" face="Arial, Helvetica, sans-serif"><b> 
          <input type="hidden" name="tema" value="Meddelande från hemsidan">
          <input type="hidden" name="redireccion" value="http://www.teatermask.com/tack.htm">
          </b></font></p>
      </form> 
__________________
La madre de la invención es la necesidad.
  #2 (permalink)  
Antiguo 28/09/2004, 10:04
 
Fecha de Ingreso: agosto-2004
Mensajes: 440
Antigüedad: 13 años, 3 meses
Puntos: 2
Esta funcion la guardas como validar.js
******************************
function verificar(obj) {
missinginfo = "";

if (obj.Namn.value=="")
{
missinginfo += "\n - Namn";
}
if (obj.epost.value=="")
{
missinginfo += "\n - E-post";
}
if (obj.Meddelande.value=="")
{
missinginfo += "\n - Meddelande";
}

if (missinginfo != "") {
missinginfo = "Te ha faltado introducir los siguientes datos:\n" + missinginfo + "\n\n¡Por favor pulsa enter, ingresa los datos y prueba de nuevo!\n";
alert(missinginfo);

return false;
}
else return true;
}
*********************************************

despues la llamas en tu formulario asi:
en el head
<head>
<script src="scripts/validar.js"></script>
</head>
************************************
espero te sirva copiala tal cual esta y me cuntas si te sirvio
__________________
paty :adios:
  #3 (permalink)  
Antiguo 28/09/2004, 10:13
 
Fecha de Ingreso: septiembre-2004
Ubicación: Puebla, México
Mensajes: 81
Antigüedad: 13 años, 2 meses
Puntos: 0
Re:

niltza,

creo que te falto decir que hay que agregar a la etiqueta form algo como onSubmit="return verificar(this)" y que validar.js hay que guardarlo en el directorio scripts

saludos
__________________
Revista DdS
Revista on-line sobre desarrollo de software
  #4 (permalink)  
Antiguo 29/09/2004, 02:27
Avatar de Erikzamith  
Fecha de Ingreso: septiembre-2003
Ubicación: Suecia
Mensajes: 75
Antigüedad: 14 años, 3 meses
Puntos: 0
Aun no funciona

Hola
Muchas gracias por su colaboracion y su tiempo, pero aun no me funciona no se que hago mal.

Tengo un HTML (E-post) con un flash y el formulario. Si desean verlo entren a www.teatermask.com en "kontakta oss", esta en sueco.

Asi:
Código HTML:
<head>
<title>Kontakta oss</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body bgcolor="#000000">
<table width="755" height="486" border="0">
  <tr> 
    <td width="312" height="144" align="center" valign="top"> 
      <h2 align="center"><font color="#FFFF00" face="Eras Bold ITC, Eras Demi ITC, Eras Light ITC">ADRESS</font></h2>
      <h4 align="center"><font color="#CCCCCC" face="Tahoma">S&ouml;dermannagatan 
        50<br>
        Box: 4057<br>
        102 61 Stockholm <br>
        Telefon: 08-642 10 22</font></h4></td>
    <td width="486" rowspan="3" align="center" valign="top"> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="530" height="480">
        <param name="movie" value="karta.swf">
        <param name="quality" value="high">
        <embed src="karta.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="530" height="480"></embed></object></td>
  </tr>
  <tr> 
    <td height="23"> <div align="center"> 
        <h2><font color="#FFFF00" face="Eras Bold ITC, Eras Demi ITC, Eras Light ITC">E-POST</font></h2>
      </div></td>
  </tr>
  <tr> 
    <td height="286" align="center" valign="top"> 
      <form name="Contacto" method="post" action="aximail.php">
	  <form action="javascript:alert('Enviando!!')" onsubmit="return comprobar(this)"> 
        <table width="312" border="0" cellspacing="0" cellpadding="0" height="69" align="center">
          <tr> 
            <td valign="top"> 
              <h5 align="center"><b><font color="#00FF00" face="Tahoma">Namn:</font></b> 
                <input name="Namn" type="text" id="Namn" size="30">
              </h5>
              <h5 align="center"><b><font color="#00FF00" face="Tahoma">E-post:</font></b> 
                <input name="epost" type="text" id="epost" size="35">
              </h5>
              </td>
          </tr>
        </table>
        <h5 align="center"><b><font color="#00FF00" face="Tahoma">Meddelande:</font></b> 
          <textarea name="Meddelande" cols="40" rows="5"></textarea>
        </h5>
        <p align="center"><font size="2" face="Arial, Helvetica, sans-serif"><b> 
          <input type="hidden" name="receptor" value="[email protected] ">
          <input type="hidden" name="remitente" value="epost">
          </b></font> 
          <input type="submit" name="Submit" value="Skicka">
		  <input type="reset" name="Reset"value="Rensa">
          <font size="2" face="Arial, Helvetica, sans-serif"><b> 
          <input type="hidden" name="tema" value="Meddelande från hemsidan">
          <input type="hidden" name="redireccion" value="http://www.teatermask.com/tack.htm">
          </b></font></p>
      </form>
      <font color="#0000FF"> Skriv en meddelande</font></td>
  </tr>
</table>
</body> 
Tengo un PHP aximail.php
Código PHP:
while(list($nombre_campo$valor_campo ) = each($HTTP_POST_VARS )) {
strtolower ($nombre_campo);


if(
is_array($valor_campo)){
$msg .= ucfirst($nombre_campo).": \n";

while (list (
$val) = each ($valor_campo)) {
$msg .= $val."\n";
}
$msg .= "\n";
}else{
if(
$nombre_campo != "submit" && $nombre_campo !="receptor" && $nombre_campo !="remitente" && $nombre_campo !="tema" && $nombre_campo !="redireccion"){
$msg .= ucfirst($nombre_campo).": ".$valor_campo."\n\n"; }
}
}

$msg .= "----------------------------------------------\n";
$msg .= "USER AGENT: ".$HTTP_USER_AGENT."\n";
$msg .= "IP: ".$REMOTE_ADDR."\n";

mail($receptor,$tema,$msg,"Wrom: MYXOEAIJJPHSC");
header("Location: $redireccion"); 
Ahora cuando presiono Skika (submit-Enviar) envia el mensaje y este llega vacio, la idea es exijirle al formulario que no se envie sino esta lleno.

Gracias de antemano.
__________________
La madre de la invención es la necesidad.
  #5 (permalink)  
Antiguo 29/09/2004, 02:45
Avatar de Erikzamith  
Fecha de Ingreso: septiembre-2003
Ubicación: Suecia
Mensajes: 75
Antigüedad: 14 años, 3 meses
Puntos: 0
Gracias amigos ya he solucionado mi incognita.

Pero ahora tengo muchas mas, como todos.

Muchas gracias, en sueco se dice "Tack så mycket"
__________________
La madre de la invención es la necesidad.
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 21:54.