Jump to content

Script PHP de Ccontacto al Webmaster


Recommended Posts

Aqui esta el codigo terminado jonydread. espero que les sea de ayuda.

 

<script language="javascript">
function CorregirEntrada(entrada, mensaje) {
alert(mensaje);
entrada.focus();
}

function ValidarEntradas(formulario) {
var EntradasOK;
EntradasOK = false;

if (formulario.nombre.value == "") {
CorregirEntrada(formulario.nombre, "Indique el NOMBRE.");
} else if (formulario.mail.value == "") {
CorregirEntrada(formulario.mail, "Indique el E-MAIL, no sea huevón.");
} else if (formulario.content.value == "") {
CorregirEntrada(formulario.mail, "Indique el CONTENIDO.");
} else {
EntradasOK = true;
}

return EntradasOK;
}
</script>


<?
if (!$HTTP_POST_VARS){
?>

<form action="<?=$_SERVER['PHP_SELF']?>" method="post" onSubmit="return ValidarEntradas(this)" name="frm">

<font face="Verdana, Arial, Helvetica, sans-serif"><br>
Nombre:</font> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<input type=text name="nombre" size=25>
<br>
Email:</font> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
</font><font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<input type=text name="email" size=25>
<br>
Mensaje:</font> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">
<textarea name="coment" cols="25" rows="6"></textarea>
<br>
<br>
</font><br>
<br>
<input name="submit" type=submit value="Enviar">
</form>
<?

}else{

//Estoy recibiendo el formulario, compongo el cuerpo

$cuerpo = "Formulario enviado desde la pagina";

$cuerpo .= "Nombre: " . $HTTP_POST_VARS["nombre"] . "n";

$cuerpo .= "Email: " . $HTTP_POST_VARS["email"] . "n";

$cuerpo .= "Mensaje: " . $HTTP_POST_VARS["coment"] . "n";



//mando el correo...
//correo al cual va a recibir, cambia el correo aqui--------------

mail("[email protected]","Formulario recibido",$cuerpo);



//doy las gracias por el envío

echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";

}

?>

 

Lo copias y lo pegas en un archivo de texto y lo guardas como contacto.php lo subes en tu servidor web y listo. todos los mensajes que te dejen llegaran al correo que pusiste.

 

ese es el script terminado

espero que sea de ayuda.-

 

agradecimientos a RockaMania que arreglo los errores

Link to comment
Share on other sites

  • Replies 21
  • Created
  • Last Reply

Top Posters In This Topic

  • 2 weeks later...

Existen aun unos problemillas en el código final posteado:

 

Los datos de los nombres de los campos a validar no coinciden con los nombres dados en el formulario propiamente dicho, lo que da como resultado que no se validen los campos dejados en blanco... el único que se valida es "nombre" que si está bien... En negrillas y en Rojo los errores:

 

 

if (formulario.nombre.value == "") {

CorregirEntrada(formulario.nombre, "Indique el NOMBRE.");

} else if (formulario.mail.value == "") {

CorregirEntrada(formulario.mail, "Indique el E-MAIL, no sea huevón.");

} else if (formulario.content.value == "") {

CorregirEntrada(formulario.mail, "Indique el CONTENIDO.");

} else {

EntradasOK = true;

}

 

agradecimientos a RockaMania que arreglo los errores

 

Debería ir:

 

if (formulario.nombre.value == "") {

CorregirEntrada(formulario.nombre, "Indique el NOMBRE.");

} else if (formulario.email.value == "") {

CorregirEntrada(formulario.email, "Indique el E-MAIL, no sea huevón.");

} else if (formulario.coment.value == "") {

CorregirEntrada(formulario.coment, "Indique el CONTENIDO.");

} else {

EntradasOK = true;

}

 

 

...Gracias por el código, esta muy bien!

 

Saludos

Link to comment
Share on other sites

no es por ser mal agradecido pero en script se espera algo como no se. ehmmmm.. mas avanzado? más profesional? si vas a tirarlo para uso que sea algo bueno. o sea esta bien que quieras ayudar, pero si a algunas personas no les funciona está mal hehco. no lo he probado porque puedo hacerlo, pero me llamo la atemción este post. podrías haberle agregado un validador simple en javascript, un mejor orden y uso para el envio del correo, haber usado if y else para ver si el correo se envio o no.

Link to comment
Share on other sites

no es por ser mal agradecido pero en script se espera algo como no se. ehmmmm.. mas avanzado? más profesional? si vas a tirarlo para uso que sea algo bueno. o sea esta bien que quieras ayudar, pero si a algunas personas no les funciona está mal hehco. no lo he probado porque puedo hacerlo, pero me llamo la atemción este post. podrías haberle agregado un validador simple en javascript, un mejor orden y uso para el envio del correo, haber usado if y else para ver si el correo se envio o no.

 

Bueno, creo que el código está bastante bien, sobre todo porque usas un solo archivo para el envío usando la función $_SERVER['PHP_SELF'] y no los típicos dos archivos (el formulario y el PHP que envía el email). A mi me ha servido de mucho ya que lo he modificado para enviar emails a otro formulario de inscripción, que cuando se inscribia la gente se envía un email automaticamente de bienvenida.

 

En cuando al script de validación en java aca publico uno interesante y sencillo:

 

Este script va en el body:

 

<script language="javascript">

function CorregirEntrada(entrada, mensaje) {

alert(mensaje);

entrada.focus();

}

 

function ValidarEntradas(formulario) {

var EntradasOK;

EntradasOK = false;

 

if (formulario.nombre.value == "") {

CorregirEntrada(formulario.nombre, "Indica el Nombre, por favor.");

} else if (formulario.apellidos.value == "") {

CorregirEntrada(formulario.apellidos, "Indica tus Apellidos, por favor.");

} else if (formulario.email.value == "") {

CorregirEntrada(formulario.email, "Escribe una dirección de e-mail válida, por favor.");

} else if (formulario.localidad.value == "") {

CorregirEntrada(formulario.localidad, "Indica tu localidad, por favor.");

} else if (formulario.telefono.value == "") {

CorregirEntrada(formulario.telefono, "Indica un número de teléfono de contacto, por favor.");

} else {

EntradasOK = true;

}

 

return EntradasOK;

}

</script>

 

En negrita escribe los nombres de los campos en el formulario que quieras validar, por ejemplo si hay un campo que no hace falta validar, simplemente no lo incluyas...si hay otros simplemente agrega los dos renglones:

 

} else if (formulario.nombre_del_campo.value == "") {

CorregirEntrada(formulario.nombre_del_campo, "Escribe aqui lo que tu quieras que salga escrito");

 

 

lo que sale con comillas es lo que saldrá en el cuadro de diálogo cuando hagas click, puede ser personalizable.

 

Luego, en la cabecera del formulario escribes la acción de onSubmit

 

<form action="insertar.php" method="post" onSubmit="return ValidarEntradas(this)" name="frm">

 

Cada vez que dejes en blanco un campo del formulario, al pinchar el botón de "enviar" saldrá el cuadro de dialogo.

 

Espero que les sirva.

 

 

Link to comment
Share on other sites

formularios con 2 archivos? eso no se usa hace años. es un gasto de numero de documentos. todos los que he visto han sido con 1 solo archivo =/..

pero bueno será. si tu viste uno de 2 bien .

 

Yo tambien estoy de acuerdo que es un gasto innecesario, pero los scripts más difundidos de CONTACT US vienen con el formulario.html y el archivo php que recibe e interactúa con el server... por lo menos son los que mayormente se consiguen en la web.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...