Foros del Web » Programando para Internet » PHP »

Problema con include () y Fomulario de emails

Estas en el tema de Problema con include () y Fomulario de emails en el foro de PHP en Foros del Web. Estoy creando un sitio en PHP y tengo todo los estilos y demas en una pagina principal [index.php], cargo el resto por include() el problema ...
  #1 (permalink)  
Antiguo 22/11/2011, 18:20
Avatar de mattnfabiani  
Fecha de Ingreso: noviembre-2011
Ubicación: Villa Constitución, Santa Fe, Argentina
Mensajes: 8
Antigüedad: 13 años
Puntos: 0
Exclamación Problema con include () y Fomulario de emails

Estoy creando un sitio en PHP y tengo todo los estilos y demas en una pagina principal [index.php], cargo el resto por include() el problema es que estoy usando un fromulario de mail con class.phpmailer.php el problema esta al momento de enviarlo, actualiza la web y vuelve a la index.php asi que no se envian los datos, les dejo el formulario.

Código PHP:

<?php


//CONFIGURACION 
$direccion_envio='******@gmail.com';                         //la direccion a la que se enviara el email.

//FIN CONFIGURACION
?>


<?php
//proceso del formulario
// si existe enviar...
if (isset ($_POST['enviar'])) {

//vamos a hacer uso de la clase phpmailer, 
require("includes/class.phpmailer.php");

$mail = new PHPMailer();
$mail->IsSMTP(); 
$mail->SMTPAuth true;
$mail->SMTPSecure "ssl";
$mail->Host "smtp.gmail.com";
$mail->Port 465;
$mail->Username "*******@gmail.com";
$mail->Password "********";

//recogemos las variables y configuramos PHPMailer
$mail->From $_POST['email'];
$mail->FromName $_POST['nombre'];
$mail->AddAddress($direccion_envio); 
$mail->Subject "Formulario Web";
$mail->AddReplyTo($_POST['email'],$_POST['nombre']);
$mail->IsHTML(true);                              
$comentario=$_POST['comentario'];

//comprobamos si se adjunto un archivo, y si su tamano es menor al permitido
if (isset($_FILES['archivo']['tmp_name']) && ($_FILES['archivo']['tmp_name']!="") ) {
    
$aleatorio rand(); 
    
$nuevonombre=$aleatorio.'-'.$_FILES['archivo']['name'];    
    
// copiamos el archivo en el servidor
    
copy($_FILES['archivo']['tmp_name'],'archivos/'.$nuevonombre);
    
$conarchivo "Su archivo ha sido adjuntado con &eacute;xito<br />";
}


//armamos el html
$contenido '<html><body>';
$contenido .= '<h2>Formulario Web</h2>';
$contenido .= '<p>Enviado el '.date("d M Y").'</p>';
$contenido .= '<hr />';
$contenido .= '<p><strong>Nombre: </strong>'.$_POST['nombre'].'';
$contenido .= '<p><strong>Email: </strong>'.$_POST['email'].'';

$contenido .= '<p><strong>Comentario:</strong> '.$comentario.'';
$contenido .= '<hr />';
$contenido .= '</body></html>';

$mail->Body    $contenido;
//  enviamos el mail

$mail->Send();

$flag='ok';
$mensaje='<div id="ok">'.$conarchivo.'Gracias por escribirnos. </div>';

}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <title>Contactenos - v3.1</title>

<style>
    body {
        font: 1em Lucida Grande, 'Trebuchet MS', verdana, sans-serif;
        font-size: 76%;}
        
    #form {
    border: 3px double #eaeaea;
    padding: 1em;
    width: 30em;
    margin: auto;
}

    #form h2{
        font-size: 2em;
        margin: 0 0 0.5em 0;
        padding: 0;}

    #form .campo {
        border: 1px solid #999;
        padding: 0.3em;
        font-size: 1.5em;}

    #form .error {
        border: 1px solid #F00;
        padding: 0.3em;
        font-size: 1.5em;}

    #form .com {
        border: 1px solid #999;
        padding: 0.3em;
        font-size: 1.5em;
        width:18em;
        height: 10em;
        font: 1.5em Lucida Grande, 'Trebuchet MS', verdana, sans-serif;}

    #form .com-error {
        border: 1px solid #F00;
        padding: 0.3em;
        font-size: 1.2em;
        width:18em;
        height: 10em;
        font: 1.5em Lucida Grande, 'Trebuchet MS', verdana, sans-serif;}

    #form .boton {
        border: 2px solid #999;
        padding: 0.3em;
        font-size: 1.2em;
        width: 4em;}
        
    #error {
        border: 1px dashed #F00;
        background-color: #FFF;
        padding: 5px;}

    #ok {
        border: 1px dashed #060;
        background-color:#FFF;
        padding: 5px;}
            
</style>

</head>
<body>
    <div id="form"><?php echo $mensaje/*mostramos el estado de envio del form */ ?>
        <?php if ($flag!='ok') { ?>
        <form action="<?php echo $PHP_SELF;?>" method="post" enctype="multipart/form-data">
            <p>Nombre <br />
            <input class="campo" type="text" name="nombre" /></p>
    
            <p>Email <br />
            <input type="text" name="email" class="campo" /></p>

        
            <p>Comentario <br />
            <textarea name="comentario" class="com"></textarea></p>
            <p><input class="boton" type="submit" name="enviar" value="enviar" /></p>
      </form>
        <?php ?>
    </div> <!-- end form-->
    
</body>
</html>
Si envio el mail desde misitio.com/contacto.php el correo sale pero si lo hago desde misitio.com/?sec=contacto no funciona por que vuelve a misitio.com/index.php

Espero que puedan ayudarme!

Última edición por mattnfabiani; 22/11/2011 a las 19:17

Etiquetas: emails, formulario, html, include, variables
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 12:59.