Problema con script php p/formulario de contacto

Hola "gilbert_fox"
Primero,deseo agradecerte que me dediques un poco de tu valioso tiempo.
Espero que me puedas ayudar o aunque sea dar una idea de como solucionar este problemita:
diseñe mi web http://www.coaching.alojalo.info/
y el inconveniente surge cuando desde el formulario de contaco me envian el mail.
HASTA AHORA NO ME LLEGO NINGUNO DE TODOS LOS QUE ENVIE.
Averigue en varios foros y me digeron que tendria que modificar algo en el archivo php.
Lo intente pero todo lo que cambie fue para peor.
Este formulario de contacto (.fla + php) lo consegui en un foro.
Este es el script del php
<?php
/******************************************************************************/
/*  Copyright (©) 2005 Crop Chile                                             */
/*  EMail form Php                                                            */
/*  [email protected]                                                              */
/*                                                                            */
/*  Este script es gratuito, proporcionado por:                               */
/*  Crop Chile                                                                */
/*  Estudio de diseño                                                         */
/*  I + D En comunicación                                                     */
/*  http://www.crop.cl                                                        */
/*                                                                            */
/* Puede usarlo par distribuirlo libremente. No para su venta                 */
/*                                                                            */
/* Puede usarlo bajo su propia responsabilidad con fines personales o         */
/* comerciales.                                                               */
/* Crop Chile NO GARANTIZA, NI SE RESPONSABILIZA de los errores que           */
/* pudieran derivarse de su uso, o un uso indebido de este script             */
/* para SPAM o cualquier otra actividad delictiva.                            */
/*                                                                            */
/* Tan solo pedimos que no eliminen esta cabecera de comentarios del script   */
/* para usarlo.                                                              ...

1 respuesta

Respuesta
1
Primero que nada encantado de poder ayudarte! Estuve observando muy rápidamente el script que estas utilizando para tu formulario de contacto y sinceramente para el propósito que le estas pensando dar es bastante superflua ya esta implementación. ¿Antes de que te dé una respuesta definitiva quisiera saber si necesariamente necesitas que tu formulario esté en flash? ¿Por qué mi recomendación particular es que lo hagas en código HTML+PHP nada mas y si cabe la posibilidad de hacerlo así me avisas que te preparo la solución completa y te la paso OK?
estimado "gilbert_fox" disculpa que haya tardado en contestar .lo que pasó fue que no podia ingresar a la pagina. estuvo fuera de servicio un par de horas.
con respecto al formulario en html+php me parce muy interesante y si no es mucha molestia para ti acepto tu propuesta
desde ya te agradezco mucho por el tiempo que dedicas a n¡mi problema .
¿<?php
if (isset($_POST['contacto']) and $_POST['contacto']=="enviar") {
    $nombre = $_POST['nombre'];
    $apellido = $_POST['apellido'];
    $email = $_POST['email'];
    $comentario = $_POST['comentario'];
    $recipiente = "[email protected]";
    $cabecera = "Contacto - Interbanco Tarjetas BE";
    $cabecera  = 'MIME-Version: 1.0' . "\r\n";
    $cabecera .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    $cabecera .= 'From: Contacto desde la web <[email protected]>\r\n';
    $cabecera .= "Reply-To: ".$nombre." ".$apellido." <".$email.">\n";
    $cuerpo = "
<h2>Nueva Consulta
<h2>";
    $cuerpo .= "<strong>Nombre:</strong> ".$nombre."<br />";
    $cuerpo .= "<strong>Apellido:</strong> ".$apellido."<br />";
    $cuerpo .= "<strong>Correo Electronico:</strong> ".$email."<br />";
    $cuerpo .= "<br />";
    $cuerpo .= "<strong>Consulta:</strong> ".$comentario."<br />";
    @mail($recipiente, $cabecera, $cuerpo, $cabecera);
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>Contacto</title>
<script language="javascript">
            function chkForm () {
                var txtNombre = document.getElementById("txtNombre").value;
                var txtApellido = document.getElementById("txtApellido").value;
                var txtEmail = document.getElementById("txtEmail").value;
                var txtComentario = document.getElementById("txtComentario").value;
                var lbl_nombre = document.getElementById("lbl_nombre");
                var lbl_apellido = document.getElementById("lbl_apellido");
                var lbl_email = document.getElementById("lbl_email");
                var lbl_comentario = document.getElementById("lbl_comentario");
                if (txtNombre.length < 1) {
                    lbl_nombre.innerHTML = "Por favor, dinos tu nombre!";
                    return false;
                }else {
                    lbl_nombre.innerHTML = "";
                }
                if (txtApellido.length < 1) {
                    lbl_apellido.innerHTML = "Ya tenemos tu nombre, cual es tu apellido?";
                    return false;
                }else {
                    lbl_apellido.innerHTML = "";
                }
                if (txtEmail.length < 1){
                    lbl_email.innerHTML = "Escribe tu correo para contactarte!";
                    return false;
                }else {
                    lbl_email.innerHTML = "";
                }
                var regx = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
                if(regx.test(txtEmail) == false){
                    lbl_email.innerHTML = " Necesitamos un correo válido, por favor!";
                    return false;
                }else {
                    lbl_email.innerHTML = "";
                }
                if (txtComentario.length < 1){
                    lbl_comentario.innerHTML = "Háznos saber tu consulta!";
                    return false;
                }else {
                    lbl_comentario.innerHTML = "";
                }
            }
        </script>
</head>
<body>
<form name="formContacto" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" onsubmit="return chkForm();">
<table>
<tr>
<td><label for="txtNombre">Nombre</label></td>
<td><input name="nombre" type="text" id="txtNombre" /></td>
<td><span id="lbl_nombre"></span></td>
<tr>
<td><label for="txtApellido">Apellido</label></td>
<td><input name="apellido" type="text" id="txtApellido" /></td>
<td<span id="lbl_apellido"></span></td>
</tr>
<tr>
<td><label for="txtEmail">E-mail</label></td>
<td><input name="email" type="text" id="txtEmail" /></td>
<td><span id="lbl_email"></span></td>
</tr>
<tr>
<td><label for="txtComentario">Comentario</label></td>
<td><textarea name="comentario" id="txtComentario" cols="30" rows="30"></textarea></td>
<td><span id="lbl_comentario"></span></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="enviar" value="" class="enviar" /></td>
<td><input type="hidden" name="contacto" value="enviar" /></td>
</tr>
</table>
</form>
</body>
</html>

Bien, este es el script completo sin CSS (estilo). Lo único que tienes que hacer es cambiar la parte del '$recipiente' en el PHP y en la '$cabecera' donde dice 'correoDestino@...' por el correo donde recibirás los mails.
Unas correcciones pequeñas pero solo en la parte visual básica. El script está todo correcto. Es en el último par de TR.

<tr>
<td><label for="txtComentario">Comentario</label></td>
<td><textarea name="comentario" id="txtComentario"></textarea></td>
<td><span id="lbl_comentario"></span></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="enviar" value="Enviar" class="enviar" /></td>
<td><input type="hidden" name="contacto" value="enviar" /></td>
</tr>
hola como estas "gibert_fox" subi el php que creaste (te estoy prfundamente agradecido por tomarte ese trabajo). Por supuesto realice los cambios que me remarcaste.
y me sucede que luego de apretar el boton enviar los campos completados no se borran por lo tanto (si mal no recuerdo en el fla al apretar "enviar" la accion de play debe :
_enviar el mail 
_borrar los campos completados y 
_debe aparecer el texto en azul debajo del logo "mensaje enviado" o algo así
y al revisar mi casilla de mail confirmo que no ha llegado ( van 3horas de espera)
una imgen vale más que mil palabras :
No se si tu lo probaste y si o queres experimentar te dejo el link:
http://www.coaching.alojalo.info/
Te cuento que el código que yo te pase era para que reemplazaras por completo tu página por el código.. porque el PHP que te pase está adaptado exclusivamente para el resto del HTML de abajo. Como te dije antes, si copiaras y pegaras completamente el código que te pase arriba en tu archivo index.php tendrías el resultado que esperabas. Ya lo único que quedaría era que ajustes según tus gustos el estilo osea la apariencia que quieres darle.
Este script ya es completo. No necesitas el flash con el.
si tenes razón hice cualquier cosa ahora reemplazo todo y te comento
saludos
Excelente!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas