Comunidad de diseño web y desarrollo en internet online

Problema con formulario(codigo)

Citar            
MensajeEscrito el 25 Nov 2007 02:40 pm
Hola! como estan? Bueno... estoy haciendo un formulario para mi pagina y no encuentro la manera de que me lo envie a mi mail.
No quiero que se abra el outlook sino que al apretar en el boton "enviar", se mande todo el contenido a mi casilla de mail...
Este es el codigo que tengo:

Código :

 <div style="margin: 15px 25px 10px 17px;">
<p align="center"><font><strong><u>Complete este formulario indicando que servicios web desea y en menos de 24hs tendrá su presupuesto detallado</u></strong></font></p>
<form action="" method="post" name="formulario" id="formulario" onSubmit="MM_validateForm('nombre','','R','apellid o','','R','empresa','','R','mail','','RisEmail','t elefono','','NisNum');return document.MM_returnValue">
<label></label>
<table width="100%" border="0">
<tr>
<td>Nombre</td>
<td><input name="nombre" type="text" id="nombre"></td>
</tr>
<tr>
<td>Apellido</td>
<td><input name="apellido" type="text" id="apellido"></td>
</tr>
<tr>
<td>Empresa</td>
<td><input name="empresa" type="text" id="empresa"></td>
</tr>
<tr>
<td>Mail</td>
<td><input name="mail" type="text" id="mail"></td>
</tr>
<tr>
<td>Telefono</td>
<td><input name="telefono" type="text" id="telefono"></td>
</tr>
<tr>
<td><label>Ciudad</label></td>
<td><input name="ciudad" type="text" id="ciudad"></td>
</tr>
<tr>
<td><label>Tipo de sitio web</label></td>
<td><label>
<select name="sitioweb" id="sitioweb">
<option value="Seleccionar" selected>Seleccionar</option>
<option value="Web Basica">Web Basica</option>
<option value="Web Intermedia">Web Intermedia</option>
<option value="Web Avanzada">Web Avanzada</option>
</select>
</label></td>
</tr>
<tr>
<td>Diseño</td>
<td><label>
<select name="select">
<option value="Seleccionar" selected>Seleccionar</option>
<option value="HTML Estandar">HTML Estandar</option>
<option value="HTML con Menu Flash">HTML con Menu Flash</option>
<option value="Indistinto">Indistinto</option>
</select>
</label></td>
</tr>
<tr>
<td>Catalogo de fotos </td>
<td><label>
<select name="select2">
<option value="Seleccionar" selected>Seleccionar</option>
<option value="Sin fotos">Sin fotos</option>
<option value="Hasta 10 fotos">Hasta 10 fotos</option>
<option value="Hasta 20 fotos">Hasta 20 fotos</option>
<option value="Hasta 30 fotos">Hasta 30 fotos</option>
<option value="Hasta 40 fotos">Hasta 40 fotos</option>
<option value="Mas de 50 fotos">Mas de 50 fotos</option>
</select>
</label></td>
</tr>
<tr>
<td>Otros componentes a utilizar</td>
<td><label>
<input name="consultas" type="checkbox" id="consultas" value="checkbox">
Formulario de consultas<br>
<input name="pedidos" type="checkbox" id="pedidos" value="checkbox">
Formulario de pedidos <br>
<input name="audio" type="checkbox" id="audio" value="checkbox">
Archivos de audio
<br>
<input name="videos" type="checkbox" id="videos" value="checkbox">
Videos<br>
<input name="archivos" type="checkbox" id="archivos" value="checkbox">
Descarga de archivos (Word, Excel, Pdf)<br>
<input name="galeria" type="checkbox" id="galeria" value="checkbox">
Galer&iacute;a de fotos en flash<br>
<input name="buscadores" type="checkbox" id="buscadores" value="checkbox" checked>
Posicionamiento en buscadores<br>
Otro (Especificar):
<input name="otro" type="text" id="otro">
</label></td>
</tr>
<tr>
<td>Dominio</td>
<td><label>
<select name="dominio" id="dominio">
<option value="Seleccionar" selected>Seleccionar</option>
<option value="Dominio ya registrado">Dominio ya registrado</option>
<option value="Dominio por registrar">Dominio por registrar</option>
</select>
</label></td>
</tr>
<tr>
<td>Comentario Adicional </td>
<td><label>
<input name="comentario" type="text" class="c_text" id="comentario" value="Haga aqui su comentario..." size="50">
</label></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><label>
<input name="enviar" type="submit" id="enviar" value="Enviar">
<input name="restablecer" type="reset" id="restablecer" value="Restablecer">
</label></td>
</tr>
</table>
<label><br>
<br>
<br>
<br>
</label>
</form>
<br>
<br>
</p>
<p><br>
</p>
</div> 


Disculpen si es una burrada lo que no entiendo.. hace poquito que estoy aprendiendo sobre diseño web. :oops:
Muchisimas gracias de antemano!!!
Saludos!!

Por carlita_pr

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 26 Nov 2007 03:49 pm
Un tutorial:

http://www.cristalab.com/tutoriales/97/envio-de-correo-electronico-desde-php-sin-la-funcion-mail

Por lo que me di cuenta tienes solo el formulario, necesitas el codigo php que envie el correo.-

Por york3rs

Claber

561 de clabLevel

1 tutorial

Genero:Masculino  

LA___Chile

msie
Citar            
MensajeEscrito el 26 Nov 2007 03:52 pm
Aca te mando un codigo:

Código :

    $fecha = date("D-M-y H:i");
   $mymail = "[email protected]";
   $subject = "Sitio Web... ";
   $contenido = $_POST["nombre"]." Escribio :\n";
   $contenido .= "titulo :". $_POST["titulo"]."\n\n";
   $contenido .= " mensaje :". $_POST["mensaje"]."\n\n";
   $contenido .= "el mensaje se escribio el ".$fecha;
   $header = "From:".$_POST["mail"]."\nReply-To:".$_POST["mail"]."\n";
   $header .= "X-Mailer:PHP/".phpversion()."\n";
   $header .= "Mime-Version: 1.0\n";
   $header .= "Content-Type: text/plain";
   mail($mymail, $subject, utf8_decode($contenido) ,$header);
   echo "&estatus=ok&";


Fijate en los $_POST[""]; que son los datos que tienes que cambiar y en tu mail.-

Por york3rs

Claber

561 de clabLevel

1 tutorial

Genero:Masculino  

LA___Chile

msie
Citar            
MensajeEscrito el 30 Nov 2007 07:43 pm
Hola! Bueno.. acabo de hacer el formulario.html y formulario.php
El problema es que al subirlo al hosting y apretar el boton enviar en el formulario. me da un error: Parse error: syntax error, unexpected ':' in /home/a7308941/public_html/presupuestar.php on line 36
"
La linea 36 es "$enviando->insert("Otros: ":$_POST[otros]);" pero yo no le veo nada raro... :mellow:

Les muestro mis formularios:
HTML

Código :

<form action="presupuestar.php" method="post" enctype="Text/pain" name="formulario" target="_blank" id="formulario" onSubmit="MM_validateForm('nombre','','R','apellido','','R','empresa','','R','mail','','RisEmail','telefono','','NisNum');return document.MM_returnValue">
                                   <label></label>
                                   <table width="100%" border="0" onfocus="MM_validateForm('nombre','','R','apellido','','R','mail','','NisEmail','telefono','','NisNum');return document.MM_returnValue">
                                    <tr>
                                      <td>Nombre</td>
                                      <td><input name="nombre" type="text" id="nombre"></td>
                                    </tr>
                                    <tr>
                                      <td>Apellido</td>
                                      <td><input name="apellido" type="text" id="apellido"></td>
                                    </tr>
                                    <tr>
                                      <td>Empresa</td>
                                      <td><input name="empresa" type="text" id="empresa"></td>
                                    </tr>
                                    <tr>
                                      <td>Mail</td>
                                      <td><input name="mail" type="text" id="mail"></td>
                                    </tr>
                                    <tr>
                                      <td>Telefono</td>
                                      <td><input name="telefono" type="text" id="telefono"></td>
                                    </tr>
                                    <tr>
                                      <td><label>Ciudad</label></td>
                                      <td><input name="ciudad" type="text" id="ciudad"></td>
                                    </tr>
                                    <tr>
                                      <td><label>Tipo de sitio web</label></td>
                                      <td><label>
                                       <select name="sitioweb" id="sitioweb">
                                         <option value="Seleccionar" selected>Seleccionar</option>
                                         <option value="Web Basica">Web Basica</option>
                                         <option value="Web Intermedia">Web Intermedia</option>
                                         <option value="Web Avanzada">Web Avanzada</option>
                                       </select>
                                      </label></td>
                                    </tr>
                                    <tr>
                                      <td>Diseño</td>
                                      <td><label>
                                       <select name="select">
                                         <option value="Seleccionar" selected>Seleccionar</option>
                                         <option value="HTML  Estandar">HTML Estandar</option>
                                         <option value="HTML con Menu Flash">HTML con Menu Flash</option>
                                         <option value="Indistinto">Indistinto</option>
                                       </select>
                                      </label></td>
                                    </tr>
                                    <tr>
                                      <td>Catalogo de fotos </td>
                                      <td><label>
                                       <select name="select2">
                                         <option value="Seleccionar" selected>Seleccionar</option>
                                         <option value="Sin fotos">Sin fotos</option>
                                         <option value="Hasta 10 fotos">Hasta 10 fotos</option>
                                         <option value="Hasta 20 fotos">Hasta 20 fotos</option>
                                         <option value="Hasta 30 fotos">Hasta 30 fotos</option>
                                         <option value="Hasta 40 fotos">Hasta 40 fotos</option>
                                         <option value="Mas de 50 fotos">Mas de 50 fotos</option>
                                       </select>
                                      </label></td>
                                    </tr>
                                    <tr>
                                      <td>Otros componentes a utilizar</td>
                                      <td><label>
                                       <input name="consultas" type="checkbox" id="consultas" value="checkbox">
                                       Formulario de consultas<br>
                                       <input name="pedidos" type="checkbox" id="pedidos" value="checkbox">
                                       Formulario de pedidos <br>
                                       <input name="audio" type="checkbox" id="audio" value="checkbox">
                                       Archivos de audio <br>
                                       <input name="videos" type="checkbox" id="videos" value="checkbox">
                                       Videos<br>
                                       <input name="archivos" type="checkbox" id="archivos" value="checkbox">
                                       Descarga de archivos  (Word, Excel, Pdf)<br>
                                       <input name="galeria" type="checkbox" id="galeria" value="checkbox">
                                       Galería de fotos en flash<br>
                                       <input name="buscadores" type="checkbox" id="buscadores" value="checkbox" checked>
                                       Posicionamiento en buscadores<br>
                                       Otro (Especificar):
                                       <input name="otro" type="text" id="otro">
                                      </label></td>
                                    </tr>
                                    <tr>
                                      <td>Dominio</td>
                                      <td><label>
                                       <select name="dominio" id="dominio">
                                         <option value="Seleccionar" selected>Seleccionar</option>
                                         <option value="Dominio ya registrado">Dominio ya registrado</option>
                                         <option value="Dominio por registrar">Dominio por registrar</option>
                                       </select>
                                      </label></td>
                                    </tr>
                                    <tr>
                                      <td>Comentario Adicional </td>
                                      <td><label>
                                       <input name="comentario" type="text" class="c_text" id="comentario" value="Haga aqui su comentario..." size="50">
                                      </label></td>
                                    </tr>
                                    <tr>
                                      <td> </td>
                                      <td><label>
                                      <input name="submit" type="submit" id="submit" value="enviar">
                                      <input name="restablecer" type="reset" id="restablecer" value="restablecer">
                                      </label></td>
                                    </tr>
                                   </table>
                                   <label><br>
                                   <br>
                                   <br>
                                   <br>
                                   </label>
                                </form>


Y este es el PHP

Código :

<? 
include("presupuestar.html");
if ($_POST) { 

if (!ereg("^[a-zA0-Z9 ]+$",$_POST[nombre]) && strlen(trim($_POST[nombre]))<1) { $error .= "Su nombre no es correcto<br>"; } 
if (!ereg("^[a-zA0-Z9 ]+$",$_POST[apellido]) && strlen(trim($_POST[apellido]))<1) { $error .= "Su apellido no es correcto<br>"; } 
if (!ereg("^[a-zA0-Z9 ]+$",$_POST[empresa]) && strlen(trim($_POST[empresa]))<1) { $error .= "Su nombre no es correcto<br>"; } 
if (!ereg("^[0-9]+$",ereg_replace("-","",$_POST[telefono]))) { $error .= "Su telefono es incorrecto"; }  
if (!ereg("^[a-zA0-Z9 ]+$",$_POST[ciudad]) && strlen(trim($_POST[ciudad]))<1) { $error .= "Su nombre no es correcto<br>"; } 

if (!$error) { 
$enviando = new email($_POST["mail"],"Formulario de contacto");
$enviando->insert("Nombre: ".$_POST[nombre]);
$enviando->insert('Apellido: '.$_POST[apellido]);
$enviando->insert('Empresa: '.$_POST[empresa]);
$enviando->insert('Email: '.$_POST["mail"]);
$enviando->insert('Telefono: '.$_POST[telefono]);
$enviando->insert('Ciudad: '.$_POST[telefono]);
$enviando->insert('Tipo de sitio web: '.$_POST[sitioweb]);
$enviando->insert('Diseño: '.$_POST[Diseno]);
$enviando->insert('Catalogo de fotos: '.$_POST[cfotos]);
$enviando->insert($_POST[consultas]);
$enviando->insert($_POST[pedidos]);
$enviando->insert($_POST[audio]);
$enviando->insert($_POST[videos]);
$enviando->insert($_POST[archivos]);
$enviando->insert($_POST[galeria]);
$enviando->insert($_POST[buscadores]);
$enviando->insert("Otros: ":$_POST[otros]);
$enviando->insert("Dominio ".$_POST[dominio]);
$enviando->insert("Comentarios ".$_POST[comentario]);

$enviando->a("[email protected]"); 
if ($enviando->enviar()) { echo "email enviado"; } else { "email no enviado"; }
}
else { echo $error; } 
}
?>


Cual es el / los errores que tengo ??La verdad no lo encuentro....
Muchisimas gracias de antemano!!
Saludos!!

Por carlita_pr

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Nov 2007 08:04 pm
Tu colocaste:

Código :

$enviando->insert("Otros: ":$_POST[otros]);

y es:

Código :

$enviando->insert("Otros: ".$_POST[otros]);


Usaste dos puntos (":") para concatenar, en vez de un punto (".")

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 30 Nov 2007 08:47 pm
Hola! Mil gracias por contestar tan rapido...
Ya cambie el ";" por "." pero sigue sin mandarlo.. ahora no me aparece ningun error, sino q me manda a formulario.php y no me envia el contenido.
Calculo que debe ser por el formulario.html
En el principio del codigo dice:

Código :

<form action="presupuestar.php" method="post" enctype="Text/pain" name="formulario" target="_blank" id="formulario" onSubmit=


Y es justamente lo que hace al apretar en enviar (Abre una ventana nueva a formulario.php)
Como hago para que me lo envie a mi mail? :oops:
Muchisimas gracias por la buena onda y la rapidez! Gracias!!! :D

Por carlita_pr

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 01 Dic 2007 12:22 am
Pues, eso es otro tema, porque no veo donde tienes definida la función "enviar()" o la clase "email" que usas en tu código.

Por The Fricky!

Presidente

6168 de clabLevel

3 tutoriales
8 articulos

Genero:Masculino   Bastard Operators From Hell Héroes

Piccola Venezia...

firefox
Citar            
MensajeEscrito el 01 Dic 2007 07:02 pm
Hola! Gracias por tanta ayuda... Gracias de verdad!
mmm yo tengo lo siguiente:
formulario.html / formulario.php / email.php

el email.php es este:

Código :

  <?
class email {
var $Temail;
var $titulo;
 
function __construct($Temail,$titulo) {
if ($this->comprobar_email($Temail) == 'no') { echo "Email de envio incorrecto"; die; } 
 
 
$this->titulo = $titulo;
$this->remitente = $Temail;
$this->head = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>'; 
$this->cabecera = "From: ".$Temail."\r\nContent-type: text/html\r\n";
$this->footer = '</body></html>';
}
 
function a($a) { 
if ($this->comprobar_email($a) == 'no') { return false; } 
$this->envio = $a;
return true;
}
 
function insert($a) { 
$this->cuerpo .= "<p>".nl2br($a)."</p>";
}
 
function enviar() { 
$this->all = $this->head.$this->cuerpo.$this->footer;
if (mail($this->envio,$this->titulo,$this->all,$this->cabecera)) { return true; } return false; 
}
 
// Esta funcion no me pertenece
function comprobar_email($email){
$mail_correcto = 0;
if ((strlen($email) >= 6) && (substr_count($email,"@") == 1) && (substr($email,0,1) != "@") && (substr($email,strlen($email)-1,1) != "@")){
if ((!strstr($email,"'")) && (!strstr($email,"\"")) && (!strstr($email,"\\")) && (!strstr($email,"\$")) && (!strstr($email," "))) {
if (substr_count($email,".")>= 1){
$term_dom = substr(strrchr ($email, '.'),1);
if (strlen($term_dom)>1 && strlen($term_dom)<5 && (!strstr($term_dom,"@")) ){
$antes_dom = substr($email,0,strlen($email) - strlen($term_dom) - 1);
$caracter_ult = substr($antes_dom,strlen($antes_dom)-1,1);
if ($caracter_ult != "@" && $caracter_ult != "."){
$mail_correcto = 1;
}
}
}
}
}
if ($mail_correcto)
return 'si';
else { 
return 'no';
}
} 
// termina clase de comprobar email.
 
}
?>


Donde tiene que ir la funcion "enviar()"? O en realidad.. que tengo que escribir para que me envie el contenido del formulario a mi mail?
Lo que me pasa ahora es que al apretar en el boton enviar, me aparece una pagina en blanco que dice: Su nombre no es correcto
Ya estoy mareada con este formulario jejejeje
Muchisimas gracias de antemano!!!
Saludos!

Por carlita_pr

3 de clabLevel



 

firefox

 

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