Foros del Web » Programando para Internet » PHP »

Enviar formulario methot Post.

Estas en el tema de Enviar formulario methot Post. en el foro de PHP en Foros del Web. Hola compañeros, pues eso estoy terminando una web y sólo me queda esto, hacer que el formulario sea operativo. Ya lo tengo diseñado y creado... ...
  #1 (permalink)  
Antiguo 28/01/2013, 12:49
Avatar de RAZGRIZ24  
Fecha de Ingreso: septiembre-2009
Mensajes: 143
Antigüedad: 14 años, 7 meses
Puntos: 2
Enviar formulario methot Post.

Hola compañeros, pues eso estoy terminando una web y sólo me queda esto, hacer que el formulario sea operativo.

Ya lo tengo diseñado y creado... lo único que necesito es el script php que procesa ese formulario y lo envía directamente al correo sin intermediarios -outlook, iMail... etc-

He intentado con algún (unos cuantos) scripts prefabricados que he encontrado pero no he conseguido lo que quería y no sé hacerlo -soy negado para programar- Así que os pido si me podéis echar una mano os lo agradeceré

El archivo submit.php está creado pero no cumple su función.

Os paso el código del formulario

Código HTML:
<form name="contactform" method="post" action="submit.php">
<table width="240px">
<tr>
*<td valign="top">
**<label for="first_name">Nombre *</label>
*</td>
</tr>
<tr>
*<td valign="top"><input name="Nombre" type="text" class="campos-form" size="20" maxlength="30" required="required" /></td>
</tr>
<tr>
*<td valign="top">
**<label for="email">Correo electrónico *</label>
*</td>
</tr>
<tr>
*<td valign="top"><input name="email" type="text" class="campos-form" size="20" maxlength="40" required="required" /></td>
</tr>
<tr>
*<td valign="top">
**<label for="telephone">Número de teléfono</label>
*</td>
</tr>
<tr>
*<td valign="top"><input name="" type="text" class="campos-form" id="teléfono" size="20" maxlength="13" /></td>
</tr>
<tr>
*<td valign="top">
**<label for="comments">Su consulta *</label>
*</td>
</tr>
<tr>
*<td valign="top"><textarea name="Consulta" cols="20" rows="10" required="required"></textarea></td>
</tr>
<tr>
*<td colspan="2" style="text-align:center">
**<input type="submit" value="Enviar">
<br />
<span class="advertencia">Los campos marcados con * son obligatorios.</span>
*</td>
</tr>
</table>
</form> 
  #2 (permalink)  
Antiguo 28/01/2013, 13:00
Avatar de s00rk  
Fecha de Ingreso: octubre-2010
Ubicación: Mexico
Mensajes: 238
Antigüedad: 13 años, 6 meses
Puntos: 48
Respuesta: Enviar formulario methot Post.

Yo recomendaria usar PHPMailer y ya puedes usar una cuenta de gmail y enviar tus correos aunque claro ocupas tener activado el OPENSSL en el php.ini.

Sobre como usar PHPMailer aqui esta un tema sobre ello:
http://www.forosdelweb.com/f18/metod...otmail-630896/
  #3 (permalink)  
Antiguo 28/01/2013, 13:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Enviar formulario methot Post.

Pues si el script.php es el que no cumple su función, ¿por qué nos muestras el formulario?

No puede ser que pienses que vamos a adivinar que hace mal dicho script que no podemos ver.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 28/01/2013, 13:22
Avatar de RAZGRIZ24  
Fecha de Ingreso: septiembre-2009
Mensajes: 143
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Enviar formulario methot Post.

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues si el script.php es el que no cumple su función, ¿por qué nos muestras el formulario?

No puede ser que pienses que vamos a adivinar que hace mal dicho script que no podemos ver.
jejejeje no si la idea no era encontrar el error sino más bien si me podíais aportar un script sencillito válido xDD porque soy consciente de que el script en sí no es excesivamente largo (aunque el que yo encontré predefinido sí). Aquí os lo enseño.

Código PHP:
<?php
if(isset($_POST['email'])) {
*****
****
// EDIT THE 2 LINES BELOW AS REQUIRED
****$email_to "[email protected]";
****
$email_subject "Formulario de contacto de www.comodinpress.com";
*****
*****
****function 
died($error) {
********
// your error code can go here
********echo "Lo sentimos, pero se ha producido un error al enviar su formulario. Inténtelo de nuevo o envíenos un correo electrónico. ";
********echo 
$error."<br /><br />";
********die();
****}
*****
****
// validation expected data exists
****if(!isset($_POST['first_name']) ||
********!isset(
$_POST['email']) ||
********!isset(
$_POST['comments'])) {
********
died('Hemos detectado que no ha rellenado alguno de los campos marcados con *. Por favor, rellénelos antes de enviar su formulario');****** 
****}
*****
****
$first_name $_POST['first_name']; // required
****$email_from $_POST['email']; // required
****$telephone $_POST['telephone']; // not required
****$comments $_POST['comments']; // required
*****
****
$error_message "";
****
$email_exp '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
**if(!
preg_match($email_exp,$email_from)) {
****
$error_message .= 'La dirección de correo electrónico que proporcionó es inválida.<br />';
**}
**if(
strlen($comments) < 2) {
****
$error_message .= 'El texto debe ser más largo para poder enviarse.<br />';
**}
**if(
strlen($error_message) > 0) {
****
died($error_message);
**}
****
$email_message "Form details below.\n\n";
*****
****function 
clean_string($string) {
******
$bad = array("content-type","bcc:","to:","cc:","href");
******return 
str_replace($bad,"",$string);
****}
*****
****
$email_message .= "First Name: ".clean_string($first_name)."\n";
****
$email_message .= "Last Name: ".clean_string($last_name)."\n";
****
$email_message .= "Email: ".clean_string($email_from)."\n";
****
$email_message .= "Telephone: ".clean_string($telephone)."\n";
****
$email_message .= "Comments: ".clean_string($comments)."\n";
*****
*****
// create email headers
$headers 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' phpversion();
@
mail($email_to$email_subject$email_message$headers);* 
?>
*
<!-- include your own success html here -->
*
Gracias por ponerse en contacto con nosotros, su formulario ha sido recibido satisfactoriamente. Nos pondremos en contacto con usted a la mayor brevedad posible.
*
<?php
}
?>

Edito: olvidad las variables no definidas del formulario original, vienen desde el script predefinido y las eliminaré una vez que compruebe que el php cumple la función.

Etiquetas: formulario
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 20:38.