Comunidad de diseño web y desarrollo en internet online

formulario php y validación

Citar            
MensajeEscrito el 10 Abr 2009 05:14 pm
Buenas gurus de Crstalab, saludos.

Esta vez les escribo para solicitarles ayuda con esto, resulta que estoy haciendo un formulario y hasta ahora el diseño resulta bastante bien, pero estoy confundido con la función del envío de mail en sí, además este formulario debe tener validación (la cuál me copié de un script) porque no soy programador solo diseñador :( .

Bueno espero me puedan ayudar, el código es este

Código :

<?php
if($_POST['send']==1){
   $to='[email protected], [email protected]';
   $mail=$_POST['email'];
   $asunto='Contacto '.$_POST['nombre'];
   $contenido=$_POST['nombre'].' escribi:
   
   '.$_POST['mensaje'];
    $header = "From:".$mail."\n";
    $header .= "Reply-To:".$mail."\n";
    $header .= "X-Mailer:PHP/".phpversion()."\n"; //Indica la Version de PHP
    $header .= "Mime-Version: 1.0\n";
    
     mail($to, $asunto, $contenido ,$header);   
}
?>


función del php

y esté es el body

Código :

<!DOCTYPE HTML PUBLIC "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title>contacto</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!--Esto más o menos lo entiendo, está incluido un estilo ahí aunque no lo necesito. Lo copié exacto del código que me mandastes-->
<link href="includes/estilo.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="includes/javascript.js"></script>
<script language="javascript">
function enviar(){

           if(validar(document.getElementById('formulario'))!=false){

            document.getElementById('formulario').submit();

            return true;

         }

        return false;

  }
</script>



<style type="text/css">
<!--
.style1 {
   font-family: Arial, Helvetica, sans-serif;
   color: #FFFFFF;
}
-->
</style>

</head>

<body bgcolor="#000000">



<TABLE cellSpacing=0 cellPadding=0 width=495 align=center>
 
  <tr>
  <td bordercolor="#FFFFFF" width="100%" height="100"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="100%" height="100">
    <param name="movie" value="banner.swf">
    <param name="quality" value="high">
    <embed src="banner.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="100%" height="100"></embed>
  </object></td>
  </tr>
  <TR>
    
    
    <TD id=viewB vAlign=top width="100%">
      <TABLE id=viewB cellSpacing=0 cellPadding=0 width="100%" border=0>
       
        <TR id=viewOS>
          
         
          </TR>
        <TR>
          
          <TD width="96%" vAlign=top bgColor=#ffffff id=viewB>
           

            <TABLE cellSpacing=0 cellPadding=5 width="100%" border=0>
          
              <TR>
                <TD>
                 
                  <TABLE cellSpacing=0 cellPadding=0 
                  width=500 align=center>
                   
                    
                    <TR>
                      <TD vAlign=top>
                        <TABLE cellSpacing=0 cellPadding=5 width="100%" border=0>
                        
                          <TR bgColor=#df0024>
                            <TD bgcolor="#999999" colSpan=3><span class="style1">Tambien puede 
                              contactarnos via Internet usando 
                              el siguiente formulario:</span></TD>
                          </TR></TBODY>
                    </TABLE>
                        <TABLE cellSpacing=0 cellPadding=5 width="100%" border=0>
                          <!--aquí estoy tirando flechas! no sé donde colocar esto..no ha funcionado en ninguna parte-->
                     <form name="formulario" action="contacto.php" method="post">
                          <TR>
                    <!--está bien esto?-->
                            <TD noWrap align=right>*Nombre:</TD>
                            <TD align=middle><input name="name" type="text" class=heading1 id="name" 
                              maxLength=50 size=42 name=name></TD></TR>
                          <TR>
                            <TD noWrap align=right>Cargo:</TD>
                            <TD align=middle><input name="position" type="text" class=heading1 id="position" 
                              maxLength=50 size=42 name=position></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Cdula o Rif:</TD>
                            <TD align=middle><input name="rif" class=heading1 id="rif" 
                              maxLength=50 size=42 name=rif></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Direccin:</TD>
                            <TD align=middle><input name="address" class=heading1 id="address" 
                              maxLength=50 size=42 name=address></TD></TR>
                          <TR>
                            <TD noWrap align=right>Ciudad:</TD>
                            <TD align=middle><input name="city" class=heading1 id="city" 
                              maxLength=50 size=42 name=city></TD></TR>
                          <TR>
                            <TD noWrap align=right>Compaa:</TD>
                            <TD align=middle><input name="compa" class=heading1 id="compa" 
                              maxLength=50 size=42 name=compa></TD></TR>
                          <TR>
                            <TD noWrap align=right>Telfono celular:</TD>
                            <TD align=middle><input name="tel" class=heading1 id="tel" 
                              maxLength=50 size=42 name=tel></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Telfono:</TD>
                            <TD align=middle><input name="phone" class=heading1 id="phone" 
                              size=42 name=phone></TD></TR>
                          <TR>
                            <TD noWrap align=right>Fax:</TD>
                            <TD align=middle><input name="fax" class=heading1 id="fax" 
                              size=42 name=fax></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Correo Electrnico:</TD>
                            <TD align=middle><input name="email" class=heading1 id="email" 
                              size=42 name=email></TD></TR>
                          <TR>
                            <TD noWrap align=right>Direccin Web:</TD>
                            <TD align=middle><input name="web" class=heading1 id="web" 
                              size=42 name=web></TD></TR>
                          <TR>
                            <TD vAlign=top noWrap align=right>*Su Consulta o 
                              Comentario: </TD>
                            <TD align=middle>
                     <textarea class=heading1 id=comments name=comments rows=10 cols=41></textarea>
                     </TD>
                     </TR>
                          <TR>
                            <TD vAlign=top noWrap align=middle bgcolor="#999999" 
                            colSpan=2><span class="style1">ATENCION: Los campos marcados 
                              con * son obligatorios.</span>                            </TD>
                          </TR>
                  
                    </TABLE>
                    </TD>
                    </TR>
                  
                    </TABLE>
                    <BR>
                  <TABLE cellSpacing=2 cellPadding=0 align=right border=0>
                    
                   <tr>
               <!--aquí se valida la función del javascript, no?-->
   <td colspan="2" align="center"><input type="button" value="Enviar"> 
   <a href="#" onClick="javascript: return enviar();"></a></td>
</tr>
</TABLE>
</TD>
</TR>
</TABLE>
</TD>
          
                    
        
        </TR>
      </TABLE>
      </TD>
      </TR>
      </TBODY>
      </TABLE>


<TABLE id=viewOS cellSpacing=0 cellPadding=0 width=720 align=center>
 
  <TR>
    
    
    <TD vAlign=top>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
       
          <TD align="center"><font size="-5"></font>Copyright  2009 Tecsalum YH C.A</TD>
          
        </TR>
        </TABLE>
      </TD>
      </TR>
      </TBODY>
      </TABLE>
      <!--donde cierro form?-->
      </form>
</BODY>
</HTML>


ccomo repito no soy programador espero sepan disculparme si cometo demasiado errores de sintaxis, estoy utilizando esto con su respectiva carpeta de includes y tdod

Por lightwindow

4 de clabLevel



 

msie
Citar            
MensajeEscrito el 10 Abr 2009 11:18 pm
<?php
if($_POST['send']==1 && strlen($_POST['campo1'])>0 && strlen($_POST['campo1'])>0 ){
$to='[email protected], [email protected]';
$mail=$_POST['email'];
$asunto='Contacto '.$_POST['nombre'];
$contenido=$_POST['nombre'].' escribi: '.$_POST['mensaje'];
$header = "From:".$mail."\n";
$header .= "Reply-To:".$mail."\n";
$header .= "X-Mailer:PHP/".phpversion()."\n"; //Indica la Version de PHP
$header .= "Mime-Version: 1.0\n";

mail($to, $asunto, $contenido ,$header);
}

?>
AQUI lA EXPLICACION
strlen($_POST['campo1'])>0 -> Vaida que el campo1 tenga un texto que sea mayor a 1 caracter y asi se hace para todos los campos del formulario, debe agregar esto a if separado por && y Listo

Por mmarulanda

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Abr 2009 03:40 am
Gracias amigo por tu pronta respuesta!!!!!! y gracias por la explicación!!!

Disculpa la molestia, pero también necesito que me expliques donde colocar el "action post" dentro del body, porque ahí es donde está mi mayor confusión :oops:

Por lightwindow

4 de clabLevel



 

msie
Citar            
MensajeEscrito el 11 Abr 2009 06:12 am
No te entiendo lo que quieres decir??? explicate mejor.

Por mmarulanda

7 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Abr 2009 04:23 pm
Hola esto es a lo que me refiero, donde colocar
<form name="formulario" action="contacto.php" method="post">
porque donde lo tengo ni siquiera lo reconoce dreamweaver (debería aparecer en naranja) pero no aparece en rojo :shock:
ese es el problema.
Y este class=heading1 no sé si está bien implementado.
Oye gracias por tu ayuda y disculpa la molestia




Código :

<TABLE cellSpacing=0 cellPadding=5 width="100%" border=0>
                          <!--aquí estoy tirando flechas! no sé donde colocar esto..no ha funcionado en ninguna parte-->
                     <form name="formulario" action="contacto.php" method="post">
                          <TR>
                    <!--está bien esto?-->
                            <TD noWrap align=right>*Nombre:</TD>
                            <TD align=middle><input name="name" type="text" class=heading1 id="name" 
                              maxLength=50 size=42 name=name></TD></TR>
                          <TR>
                            <TD noWrap align=right>Cargo:</TD>
                            <TD align=middle><input name="position" type="text" class=heading1 id="position" 
                              maxLength=50 size=42 name=position></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Cdula o Rif:</TD>
                            <TD align=middle><input name="rif" class=heading1 id="rif" 
                              maxLength=50 size=42 name=rif></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Direccin:</TD>
                            <TD align=middle><input name="address" class=heading1 id="address" 
                              maxLength=50 size=42 name=address></TD></TR>
                          <TR>
                            <TD noWrap align=right>Ciudad:</TD>
                            <TD align=middle><input name="city" class=heading1 id="city" 
                              maxLength=50 size=42 name=city></TD></TR>
                          <TR>
                            <TD noWrap align=right>Compaa:</TD>
                            <TD align=middle><input name="compa" class=heading1 id="compa" 
                              maxLength=50 size=42 name=compa></TD></TR>
                          <TR>
                            <TD noWrap align=right>Telfono celular:</TD>
                            <TD align=middle><input name="tel" class=heading1 id="tel" 
                              maxLength=50 size=42 name=tel></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Telfono:</TD>
                            <TD align=middle><input name="phone" class=heading1 id="phone" 
                              size=42 name=phone></TD></TR>
                          <TR>
                            <TD noWrap align=right>Fax:</TD>
                            <TD align=middle><input name="fax" class=heading1 id="fax" 
                              size=42 name=fax></TD></TR>
                          <TR>
                            <TD noWrap align=right>*Correo Electrnico:</TD>
                            <TD align=middle><input name="email" class=heading1 id="email" 
                              size=42 name=email></TD></TR>
                          <TR>
                            <TD noWrap align=right>Direccin Web:</TD>
                            <TD align=middle><input name="web" class=heading1 id="web" 
                              size=42 name=web></TD></TR>
                          <TR>
                            <TD vAlign=top noWrap align=right>*Su Consulta o 
                              Comentario: </TD>
                            <TD align=middle>
                     <textarea class=heading1 id=comments name=comments rows=10 cols=41></textarea>
                     </TD>
                     </TR>
                          <TR>
                            <TD vAlign=top noWrap align=middle bgcolor="#999999" 
                            colSpan=2><span class="style1">ATENCION: Los campos marcados 
                              con * son obligatorios.</span>                            </TD>
                          </TR>
                  
                    </TABLE>
                    </TD>
                    </TR>
                  
                    </TABLE>
                    <BR>
                  <TABLE cellSpacing=2 cellPadding=0 align=right border=0>
                    
                   <tr>
               <!--aquí se valida la función del javascript, no?-->
   <td colspan="2" align="center"><input type="button" value="Enviar"> 
   <a href="#" onClick="javascript: return enviar();"></a></td>
</tr>
</TABLE>
</TD>
</TR>
</TABLE>
</TD>
          
                    
        
        </TR>
      </TABLE>
      </TD>
      </TR>
      </TBODY>
      </TABLE>


<TABLE id=viewOS cellSpacing=0 cellPadding=0 width=720 align=center>
 
  <TR>
    
    
    <TD vAlign=top>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
       
          <TD align="center"><font size="-5"></font>Copyright  2009 Tecsalum YH C.A</TD>
          
        </TR>
        </TABLE>
      </TD>
      </TR>
      </TBODY>
      </TABLE>
      <!--donde cierro form?-->
      </form>
</BODY>
</HTML>

Por lightwindow

4 de clabLevel



 

msie
Citar            
MensajeEscrito el 28 Mar 2018 09:11 pm
Hola a todos, necesito ayuda para validar un formulario con solo letras en el campo de nombre en el contacto de mi página web.
Actualmente si un usuario de mi sitio envía un número en el campo de nombre el formulario se lo permite.
----
Contacto HTML

<!-- contact -->
<section id="contact">

<div class="container">
<div class="row bottom-pad-40 text-center custom-icon-2">
<div class="col-md-4 wow fadeInDown" data-wow-duration="1s" data-wow-delay="1.1s">
<h2 class="small-title"><span class="icon-map-pin"></span>Address</h2>
<p>---</p>
</div>
<div class="col-md-4 wow fadeInDown" data-wow-duration="1s" data-wow-delay="1.2s">
<h2 class="small-title"><span class="icon-envelope"></span>Email</h2>
<p>---</p>
</div>
<div class="col-md-4 wow fadeInDown" data-wow-duration="1s" data-wow-delay="1.3s">
<h2 class="small-title"><span class="icon-mobile"></span>Phone</h2>
<p>---</p>
</div>
</div>
</div>

<div id="map-overlay">

<!-- google map -->
<div id="map"></div>
<!-- end: google map -->

<div class="container">
<div class="row">
<div class="col-md-push-6 col-md-6">
<form id="contact-form" class="form-horizontal" method="post" action="assets/email.php">
<div class="form-group">
<div class="col-md-12 small-caret">
<div class="messages"></div>
<h2 class="small-title"><span class="fa fa-caret-right"></span>GET in touch</h2>
</div>
<div class="col-md-12">
<input class="form-control" type="text" name="name" placeholder="Name" required="required">
</div>
<div class="col-md-12">
<input class="form-control" type="text" name="subject" placeholder="Subject" required="required">
</div>
<div class="col-md-12">
<input class="form-control" type="email" name="email" placeholder="Email" required="required">
</div>
<div class="col-md-12">
<textarea class="form-control" name="message" rows="8" placeholder="Please include your cell phone number in this message, for a faster response." required></textarea>
</div>
<div class="col-md-12">
<button type="submit" class="btn contact-btn wow fadeInUp" data-wow-duration="1s" data-wow-delay=".5s">Submit</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>

</section>
<!-- end: contact -->

-------
Contacto PHP


<?php

// configure
$from = 'Way2Mind Web Contact <[email protected]>';
$sendTo = 'Basic Enquiry Form <[email protected]>';
$subject = 'New message from Way2Mind Web Contact';
$fields = array('name' => 'Name', 'subject' => 'Subject', 'email' => 'Email', 'message' => 'Message'); // array variable name => Text to appear in email
$okMessage = 'Message sent successfully.';
$errorMessage = 'Message sending failed! Please try later.';

// let's do the sending

try
{
$emailText = "Enquiry Details\n---------------\n";


foreach ($_POST as $key => $value) {

if (isset($fields[$key])) {
$emailText .= "$fields[$key]: $value\n";
}
}

mail($sendTo, $subject, $emailText, "From: " . $from);

$responseArray = array('type' => 'success', 'message' => $okMessage);
}
catch (\Exception $e)
{
$responseArray = array('type' => 'danger', 'message' => $errorMessage);
}

if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
$encoded = json_encode($responseArray);

header('Content-Type: application/json');

echo $encoded;
}
else {
echo $responseArray['message'];
}



Gracias por la ayuda.

Por odinx07

2 de clabLevel



Genero:Masculino  

Publicista / Diseñador

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.