Foros del Web » Programando para Internet » PHP »

Formulario de contacto

Estas en el tema de Formulario de contacto en el foro de PHP en Foros del Web. Hola gente, quiero insertar un formulario de contacto en mi web, estube buscando y encontre uno. Estube metiendo mano y lo que busco es como ...
  #1 (permalink)  
Antiguo 26/05/2009, 19:54
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Formulario de contacto

Hola gente, quiero insertar un formulario de contacto en mi web, estube buscando y encontre uno. Estube metiendo mano y lo que busco es como hacer para que cuando se deje un campo en blanco, salga en mensaje diciendo "Por favor ingresa un email valido".

Estube probando de la siguiente manera

Código PHP:
$email $_POST['email'];

// Punto 1, Valida email
if(!$email == "" && (!strstr($email,"arroba") || !strstr($email,".")))
{
echo 
"<h2>Regrese - Ingrese un E-mail valido</h2>\n";

El mensaje de error sale pero, tambien me sale el mensaje que fue enviado y el email se envia correctamente
Código HTML:
<p align="center">
Gracias por comunicarte con nosotros.
</p> 
  #2 (permalink)  
Antiguo 26/05/2009, 19:57
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: [Ayuda] Formulario de contacto

( ereg (@, $mail )
intenta asi saludines!
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #3 (permalink)  
Antiguo 26/05/2009, 22:56
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Disculpa mi ignorancia, es que no estoy tan ducho con php. Donder iria eso que me dejaste vos ?
  #4 (permalink)  
Antiguo 26/05/2009, 23:18
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

Si quieres validar y estar seguro que es un email verdadero usa esto

Código PHP:
if(!eregi("/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2,6})$/"$email)){
  echo 
"<h2>Regrese - Ingrese un E-mail valido</h2>\n"

no necesitas mas nada para validar si es email aunque este vacio te saldra esto tambien
  #5 (permalink)  
Antiguo 27/05/2009, 03:55
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Buenisimo y si quisiera asegurarme que en ese campo se escribio algo ? Que no fue dejado en blanco ?
  #6 (permalink)  
Antiguo 27/05/2009, 10:15
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Nadie puede ayudarme ?
  #7 (permalink)  
Antiguo 27/05/2009, 10:35
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

Puedes usar lo mismo anteriormente o si quieres solamente asegurarte que no este en blanco puedes usar el concepto

$variable = trim($variable);
if(empty($variable)){
echo "mensaje";
}
  #8 (permalink)  
Antiguo 27/05/2009, 10:41
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

El trim es para borrar espacios que estan antes o despues de un texto ejemplo

Código PHP:
$variable "   aqui va un texto    ";

//escribe "   aqui va un texto    " con los espacios.
echo $variable;



$variable trim($variable);

//Escribe "aqui va un texto" sin los espacios
echo $variable
  #9 (permalink)  
Antiguo 27/05/2009, 10:50
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Pruebo y te digo, muchisimas gracias por ayudarme!
  #10 (permalink)  
Antiguo 27/05/2009, 10:55
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Tengo un problema al querer enviar el formulario :S
Parse error: syntax error, unexpected $end in enviar.php on line 71

Dejo aca enviar.php

Código PHP:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Formulario de envio Script</title>
</head>
<body>

<!-- Recuerde: Agregue un link en donde dice 'Index' (en el boton) -->
<!-- Recuerde: Cambie donde dice 'TuEemail' al eemail tuyo -->

<?php

$ip 
$_POST['ip'];
$httpref $_POST['httpref'];
$httpagent $_POST['httpagent'];
$nombre $_POST['nombre'];
$telefono $_POST['telefono'];
$direccion $_POST['direccion'];
$dominio $_POST['dominio'];
$email $_POST['email'];
$conocio $_POST['conocio'];
$attn $_POST['attn'];

if (
eregi('http:'$notes)) {
die (
"Do NOT try that! ! ");
}
// Punto 1, Valida email
if(!eregi("/^\w+([\.-]?\w+)*arroba\w+([\.-]?\w+)*\.(\w{2,6})$/"$email)){
  echo 
"Ingrese una direccion de correo electronico valida \n"
}
// Punto 2, Valida el nombre
if(empty($nombre) || empty($email)) {
echo 
"<h2>Regrese - Rellene todos los campos</h2>\n";
die (
"Regrese a completar los datos! ! ");
}
// Punto 3, Valida la lista "como nos conocio".
if(empty($conocio)) {
{
echo 
"Regrese - Rellene todos los campos \n";
}

$todayis date("l, F j, Y, g:i a") ;

$attn $attn ;
$subject $attn;

$notes stripcslashes($notes);

$message "
Concepto: $attn \n
Nombre y apellido: $nombre \n
Email: $email \n
Telefono: $telefono \n
Direccion: $direccion \n
Dominio: $dominio \n
Nos conocio por: $conocio \n
IP = $ip \n
Navegador usado: $httpagent \n
"
;

$from "From: $email\r\n";

mail(""$subject$message$from); // Punto 3 cambiar por tu email.

?>
<p align="center">
Gracias : <?php echo $nombre ?>, revisa tu emial ( <?php echo $email ?> ) te enviaremos las formas de pago y el monto a abonar.
</p>

</body>
</html>
  #11 (permalink)  
Antiguo 27/05/2009, 10:57
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

cual es ahi la linea 71?
  #12 (permalink)  
Antiguo 27/05/2009, 11:01
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Perdon, supuestamente la linea 71 es la etiqueta </html>
  #13 (permalink)  
Antiguo 27/05/2009, 11:08
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

Mi sugerencias es que vayas haciendo un debug. Ve colocando die(); desde abajo hacia arriba hasta donde tu veas que no salga el error.

Ejemplo

Código PHP:
<p align="center">
Gracias : <?php echo $nombre ?>, revisa tu emial ( <?php echo $email ?> ) te enviaremos las formas de pago y el monto a abonar.
</p>
<?php die(); ?>
</body>
</html>
Ejemplo 2
Código PHP:
<?php
$message 
"
Concepto: $attn \n
Nombre y apellido: $nombre \n
Email: $email \n
Telefono: $telefono \n
Direccion: $direccion \n
Dominio: $dominio \n
Nos conocio por: $conocio \n
IP = $ip \n
Navegador usado: $httpagent \n
"
;

$from "From: $email\r\n";

mail(""$subject$message$from); // Punto 3 cambiar por tu email.

die();
?>
<p align="center">
Gracias : <?php echo $nombre ?>, revisa tu emial ( <?php echo $email ?> ) te enviaremos las formas de pago y el monto a abonar.
</p>

</body>
</html>
Ejemplo 3

Código PHP:
<?php
$message 
"
Concepto: $attn \n
Nombre y apellido: $nombre \n
Email: $email \n
Telefono: $telefono \n
Direccion: $direccion \n
Dominio: $dominio \n
Nos conocio por: $conocio \n
IP = $ip \n
Navegador usado: $httpagent \n
"
;

$from "From: $email\r\n";
die();
mail(""$subject$message$from); // Punto 3 cambiar por tu email.

?>
<p align="center">
Gracias : <?php echo $nombre ?>, revisa tu emial ( <?php echo $email ?> ) te enviaremos las formas de pago y el monto a abonar.
</p>

</body>
</html>
Hasta que no diga el error

Cuando pase eso entonces significa que el error esta en la siguiente linea y ahi verificamos m

me dejas saber
  #14 (permalink)  
Antiguo 27/05/2009, 11:21
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Agregue "Ejemplo 3" a mi enviar.php y ahora el error que lanza es el siguiente:
Parse error: syntax error, unexpected '<' in enviar.php on line 49
Código PHP:
<?php // Esta es la linea 49
$message "
Concepto: $attn \n
Nombre y apellido: $nombre \n
Email: $email \n
Telefono: $telefono \n
Direccion: $direccion \n
Dominio: $dominio \n
Nos conocio por: $conocio \n
IP = $ip \n
Navegador usado: $httpagent \n
"
;

$from "From: $email\r\n";
die();
mail(""$subject$message$from); // Punto 3 cambiar por tu email.

?>
<p align="center">
Gracias : <?php echo $nombre ?>, revisa tu emial ( <?php echo $email ?> ) te enviaremos las formas de pago y el monto a abonar.
</p>

</body>
</html>
  #15 (permalink)  
Antiguo 27/05/2009, 11:23
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

Ok, no le añadas los <?php yo lo hice para que saliera en colores en esta pagina. Deja el codigo como esta y solo añadele los die(); en diferentes lugares.
  #16 (permalink)  
Antiguo 27/05/2009, 11:26
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: [Ayuda] Formulario de contacto

Seguramente ya estuviera abierto PHP. Es decir, tú código tendrá una estructura así:
Código PHP:
<?php
//Algo de código
<?php
  #17 (permalink)  
Antiguo 27/05/2009, 11:29
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Podrias dejarme directamente como insertar el codigo ?
Se me hace lio :S, disculpa la molestia!
  #18 (permalink)  
Antiguo 27/05/2009, 11:40
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Colocando el die(); como en el Ejemplo 3 no me sale mas el error, pero me sale:
Regrese - Rellene todos los campos
Regrese a completar los datos! !


Que segun estimo seria esto:
Código PHP:
// Punto 2, Valida el nombre
if(empty($nombre) || empty($email)) {
echo 
"<h2>Regrese - Rellene todos los campos</h2>\n";
die (
"Regrese a completar los datos! ! "); 
Pero estoy completando todos los campos :(, hay algun error me parece!
  #19 (permalink)  
Antiguo 27/05/2009, 11:58
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

Verifica que el nombre del campo nombre sea igual que el $nombre = $_POST['nombre'];

<input type="text" name="nombre" />

cuando la llames tienes que llamarlo con el mismo caracter si esta en mayuscula o en minuscula
  #20 (permalink)  
Antiguo 27/05/2009, 16:20
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

<input type="text" name="nombre" class="input" size="50" value="">
  #21 (permalink)  
Antiguo 27/05/2009, 16:31
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

Escribe un echo antes del if que me enviaste o sea

Código PHP:
echo $nombre " - " $email;
die();
// Punto 2, Valida el nombre
if(empty($nombre) || empty($email)) {
echo 
"<h2>Regrese - Rellene todos los campos</h2>\n";
die (
"Regrese a completar los datos! ! "); 
Es para ver si tiene alguna informacion entonces

Si no sale información hay algun problema entonces cuando se estan asignando las variable. De casualidad el form que envia la información tiene el method="POST"?
  #22 (permalink)  
Antiguo 27/05/2009, 17:11
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Si, tiene ese method:
Código HTML:
<form id="forma" action="enviar.php" method="post"> 
  #23 (permalink)  
Antiguo 27/05/2009, 17:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

hiciste el echo?
  #24 (permalink)  
Antiguo 27/05/2009, 22:11
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

Si lo puse me quedo asi...

Código PHP:
echo $nombre " - " $email;
die();
// 33
// Punto 2, Valida el nombre
if(empty($nombre) || empty($email)) {
echo 
"<h2>Regrese - Rellene todos los campos</h2>\n";
die (
"Regrese a completar los datos! ! ");  

Y me sale esto:
Parse error: syntax error, unexpected '}' in enviar.php on line 33
  #25 (permalink)  
Antiguo 27/05/2009, 22:16
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 8 meses
Puntos: 32
Respuesta: [Ayuda] Formulario de contacto

Cita:
Iniciado por gustax Ver Mensaje
Si lo puse me quedo asi...

Código PHP:
echo $nombre " - " $email;
die();
// 33 <---------------------------------------------- [B]QUE HACE ESTA LLAVE?[/B]
// Punto 2, Valida el nombre
if(empty($nombre) || empty($email)) {
echo 
"<h2>Regrese - Rellene todos los campos</h2>\n";
die (
"Regrese a completar los datos! ! ");  

Y me sale esto:
Parse error: syntax error, unexpected '}' in enviar.php on line 33

Quita la llave que te señale
  #26 (permalink)  
Antiguo 27/05/2009, 23:01
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

quita esa llave como te dijo acoevil y dime que te sale en el echo?
  #27 (permalink)  
Antiguo 28/05/2009, 10:59
 
Fecha de Ingreso: mayo-2009
Mensajes: 57
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: [Ayuda] Formulario de contacto

quite la llave y me tira el error en la line 73 que es el cierre de la etiqueta <html>, es decir </html>, como pasaba antes
  #28 (permalink)  
Antiguo 28/05/2009, 11:24
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: [Ayuda] Formulario de contacto

es que tienes algo que no esta cerrado o no tiene bien puesta la "
o }

Escribe de nuevo el codigo sin el echo que te habia dicho para verlo. El que tienes modificado al momento
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 22:17.