Comunidad de diseño web y desarrollo en internet online

Problemas con el envio de emails con php

Citar            
MensajeEscrito el 05 Oct 2007 10:56 pm
Hola!! :D
Haber quien me puede hechar la mano, porque antes de preguntarles esto, ya lo estuve platicando con el buscador, y no mas no...
lo que intento hacer, es que desde una pagina "comentarios" se puedan mandar email al "propietario" de la pagina... supongo algo sencillo, al menos asi me parece, he utilizado la function mail en PHP pero nanais; lo que hago es lo siguiente:
en un archivo PHP de nombre contact pongo lo siguiente:

<?php
$remitente = $_REQUEST["nombre"];
$teléfono= $_REQUEST["teléfono"];
$mensaje = $_REQUEST["comentarios"];

mail("[email protected]", "Comentarios desde mi pagina", $mensaje, "From: $remitente");
or die ("Su mensaje no se envio.");

echo "<p>Hemos recibido la siguiente informaci&oacute;n:<p>";
echo $mensaje;
echo "<p><br><p>Muy pronto nos pondremos en contacto con usted.<p>";
?>


Ahora, entiendo que esto debe ser por separado, asi que en un archivo HTML creo lo siguiente:


<FORM name="comentario" action="contact.php" method="post">
<table width="200" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>Nombre:</td>
</tr>
<tr>
<td><label>
<INPUT size=14 name="nombre" />
</label></td>
</tr>
<tr>
<td>Tel&eacute;lefono:</td>
</tr>
<tr>
<td><label>
<INPUT size=14 name="teléfono" />
</label></td>
</tr>
<tr>
<td>Comentario:</td>
</tr>
<tr>
<td><label>
<TEXTAREA name="comentarios" rows=6 cols=35 ></textarea>
</label></td>
</tr>
<tr>
<td><label>
<INPUT type="submit" name="Submit" value="Enviar" />
</label></td>
</tr>
</table>
</form>


Despues lo pruebo en IE y nada... me manda a una pagina, donde aparece el siguiente mensaje: HTTP 404 no ha encontrado
mi servcio de hosting si cuenta con los servicios de PHP asi que no entiendo...

como comentaba talvez algo sencillo pero la verdad soy un aprendiz, con muchas ganas de saber... asi que no se desesperen con mis preguntas.... gracias se despide por el momento un amigo.... :D

Por etzekiel

107 de clabLevel



 

Mexico

msie
Citar            
MensajeEscrito el 05 Oct 2007 11:42 pm
uno: quita la tilde del nombre del campo "teléfono" y después, haz lo mismo con la variable...
dos: ¿estas seguro que existe la página "contact.php" en el mismo nivel o directorio del servidor?

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox
Citar            
MensajeEscrito el 06 Oct 2007 01:17 am
muchas gracias por tu comentario Conde Nado Pedro, he aplicado lo que me explicaste en tu mensaje anterior, y ya subi el archivo PHP pero ahora sale esto:


Parse error: syntax error, unexpected T_LOGICAL_OR in /home/descanicom/domains/descani.com/public_html/contact.php on line 7


si recordamos asi quedo el PHP:


<?php
$remitente = $_REQUEST["nombre"];
$telefono= $_REQUEST["telefono"];
$mensaje = $_REQUEST["comentarios"];

mail("[email protected]", "Comentarios desde mi pagina", $mensaje, "From: $remitente");
or die ("Su mensaje no se envio");

echo "<p>Hemos recibido la siguiente información:<p>";
echo $mensaje;
echo "<p><br><p>Muy pronto nos pondremos en contacto con usted.<p>";
?>


es un error de sintaxis pero no se como arreglarlo :(
... y si no es mucho pedir... gracias...

Por etzekiel

107 de clabLevel



 

Mexico

msie
Citar            
MensajeEscrito el 06 Oct 2007 04:43 pm
Al final de la llamada a la función mail() tienes un punto y coma que no debería estar porque lo que sigue es un operador OR.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 06 Oct 2007 09:02 pm
Muchas gracias por sus comentarios, he hecho algunas más pruebas, cambiando las cosas que me propusieron y queda muy bien, pero ahora trato de validar el formulario y resulta bien o al menos asi parece, porque al ejecutarlo y no llenar un campo por ejemplo: nombre; me aparece el mensaje de alerta que quiero: "por favor ingrese su nombre", le doy aceptar y no me regresa al formulario para llenarlo con mi nombre si no que lo envia...
les muestro lo que he hecho con el script:


<script language="javascript">

function verifica()
{
if (comentario.nombre.value=="")
{
alert("por favor ingrese su nombre.");
return;
}
if (comentario.teléfono.value=="")
{
alert("por favor ingrese su teléfono.");
return ;
}

if (comentario.comentarios.value=="")
{
alert("debe escribir un comentario.");
return;
}

alert("su mensaje ha sido enviado, pronto estaremos en contacto con usted");
comentario.sumbit();
}


el form queda de la siguiente forma:


<FORM name="comentario" action="contact.php" method="post">
<table width="200" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td height="19" colspan="2" class="Estilo45">Nombre:</td>
</tr>
<tr>
<td height="22" colspan="2"><label>
<INPUT size=20 name="nombre" />
</label></td>
</tr>
<tr>
<td height="19" colspan="2" class="Estilo45">Teléfono:</td>
</tr>
<tr>
<td height="22" colspan="2"><label>
<INPUT size=20 name="teléfono" />
</label></td>
</tr>
<tr>
<td height="19" colspan="2" class="Estilo45">Comentario:</td>
</tr>
<tr>
<td height="118" colspan="2" align="left" valign="top"><label>
<TEXTAREA name="comentarios" rows=6 cols=20 ></textarea>
</label></td>
</tr>
<tr>
<td width="114" height="24" align="center" valign="top"><label>
<input type="reset" name="Submit2" value="Restablecer" />
</label></td>
<td width="113" align="center" valign="top"><label>
<INPUT type="submit" name="Submit" value="Enviar" onClick="onclick=verifica()" href="http://www.descani.com/contacto.html#"/>
</label></td>
</tr>
</table>
</form>

he intentado proponer otras soluciones pero nada... bueno no muchas porque apenas le estoy agarrando el patin...
muchas gracias antes de tiempo pero con la misma franqueza de siempre :D

Por etzekiel

107 de clabLevel



 

Mexico

msie
Citar            
MensajeEscrito el 06 Oct 2007 10:43 pm
Ese último Input, cámbialo a type="button".

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Oct 2007 12:14 am
Gracias DriveOp por tus comentarios lo que ahora pasa es que no manda el mail... se queda estática la pagina pero no manda nada.... como ves?
le cambie al ultimo input como me dijiste a Type="button" y es lo que sucede, de alguna forma si funciona la validacion pero no procesa la información

:o

Por etzekiel

107 de clabLevel



 

Mexico

msie
Citar            
MensajeEscrito el 07 Oct 2007 08:08 am
Prueba cambiar esto:
comentario.sumbit();
por esto:
document.comentario.sumbit();

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 07 Oct 2007 06:08 pm
no, sigue igual, si le cambio el imput type=button no me manda la información, si le dejo type=Sumbit, lo manda pero no deja que se ejecute la verificación, esto sucede añadiendo la ultima modificación que me propusiste DriveOp la de cambiar comentario.sumbit(); por document.comentario.sumbit(); ... he buscado paginas similares para comparar el código, pero parece que esta todo bien... otra cosa en la barra de estado me marca error en la pagina, me supongo que es por la configuración...
haré un ejemplo piloto rapido y vere su desempeño, talvez por ahi ande un error el cual no lo haya detectado... :)

Por etzekiel

107 de clabLevel



 

Mexico

msie
Citar            
MensajeEscrito el 07 Oct 2007 10:55 pm
hasta la de tantos... gracias DriveOp por tu paciencia al fin pude resolver la duda, la clave era meter el script en el form, quedo así: :D hasta que voy a dormir tranquilo...

<FORM name="comentario" action="contact.php" method="post">
<table width="200" border="0" cellpadding="0" cellspacing="0" bgcolor="#F4F4F4">
<tr>
<td height="19" colspan="2" class="Estilo45">Su nombre:</td>
</tr>
<tr>
<td height="22" colspan="2"><label>
<INPUT size=20 name="nombre" />
</label></td>
</tr>
<tr>
<td height="19" colspan="2" class="Estilo45">Su Email:</td>
</tr>
<tr>
<td height="22" colspan="2"><label>
<INPUT size=20 name="mail" />
</label></td>
</tr>
<tr>
<td height="19" colspan="2" class="Estilo45">Teléfono:</td>
</tr>
<tr>
<td height="22" colspan="2"><label>
<INPUT size=20 name="teléfono" />
</label></td>
</tr>
<tr>
<td height="19" colspan="2" class="Estilo45">Comentario:</td>
</tr>
<tr>
<td height="118" colspan="2" align="left" valign="top"><label>
<TEXTAREA name="comentarios" rows=6 cols=20 ></textarea>
</label></td>
</tr>
<tr>
<td width="102" height="24" align="center" valign="top"><label>
<input type="reset" name="Submit2" value="Restablecer" />
</label></td>
<td width="98" align="center" valign="middle"><label>
<script language="javascript">

function verifica()
{
if (comentario.nombre.value=="")
{
alert("por favor ingrese su nombre.");
return;
}
if (comentario.teléfono.value=="")
{
alert("por favor ingrese su teléfono.");
return ;
}

if (comentario.comentarios.value=="")
{
alert("debe escribir un comentario.");
return;
}

alert("su mensaje ha sido enviado, pronto estaremos en contacto con usted");
document.comentario.submit();
}

</script>
<input type="button" name="Submit" value="Enviar" onClick="verifica()" />
</label></td>
</tr>
<tr>
<td height="17" colspan="2" valign="top" class="Estilo38"><br />
<span class="Estilo6">Dejenos brindarle un buen servicio, porfavor llene toda la solicitud para poder estar en contacto </span></td>
</tr>
</table>
</form>

Por etzekiel

107 de clabLevel



 

Mexico

msie

 

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