Ver Mensaje Individual
  #8 (permalink)  
Antiguo 21/06/2012, 13:30
Avatar de manyblue
manyblue
 
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: Instalación PHPMailer en Ubuntu y LAMP

Bueno, bueno, perdona pero debo de hacer demasiadas tareas a la vez.

Por D............ por fin ya me envia los formularios, con algunos problema que te expondre al final.

1.- Me he cargado en el directorio virtual de un dominio con el que hago pruebas en este server, el directorio phpmailer que habia creado con todo lo de la descarga de phpmailer.

2.- He conseguido dos archivos arreglados para gmail:

class.smtp.php y class.phpmailer.php

Si se quiere usar con otros servidores de correos como hotmail o yahoo solo hay que cambiar en el archivo class.smtp.php
Las dos siguientes lineas:

$host = "ssl://smtp.gmail.com";
$port = 465;

Si quereis os los paso.

El archivo enviar:contacto.php que he usado es este:

Código PHP:
<?php
// Adquirimos las variables del formulario y mas
$dia=date("d.m.Y");
$hora=date("H:i:s");
$nombre $_GET['nombre'];
$email $_GET['email'];
$asunto $_GET['asunto'];
$telefono $_GET['telefono'];
$texto $_GET['texto'];
$mensaje "
 El mensaje se a enviado el dia: $dia a las: $hora\n\n 
----------------------------------------------------------------------------\n
 Nombre: $nombre\n
 Email:  $email\n
 Telefono:  $telefono\n
 Asunto:  $asunto \n
 Texto:  $texto\n
 ----------------------------------------------------------------------------\n
 "
;
    require(
"class.phpmailer.php"); 
//------------------------------------------------------
    
$correo_destino="[email protected]"//a que correo llega
    
$nombre_destino="Armando "//nombre de quien recibe
    
$correo_emisor="[email protected]"//tu correo
    
$nombre_emisor="Armando"//tu nombre
    
$contrasena="1"//contraseña de tu usuario
//--------------------------------------------------------
    
$mail = new PHPMailer();
    
$mail->IsSMTP(); // Envia el correo via SMTP
    
$mail->SMTPAuth true// Enciende la autenticacion SMTP
    
$mail->Username $correo_emisor// Usuario SMTP
    
$mail->Password $contrasena// Contrasena SMTP    
    
$mail->From $correo_emisor;
    
$mail->FromName $nombre_emisor//Nombre del que envia el correo
    
$mail->AddAddress($correo_destino,$nombre_destino);
    
$mail->AddReplyTo($correo_emisor,$nombre_emisor);
    
$mail->WordWrap 50// Word wrap
    
$mail->IsHTML(true); // Enviar como HTML
    
$mail->Subject "FORMULARIO DE CONTACTO"//Asunto
    
$mail->Body $mensaje//Cuerpo en HMTL
    
$mail->AltBody "
 El mensaje se a enviado el dia: $dia a las: $hora\n\n 
----------------------------------------------------------------------------\n
 Nombre: $nombre\n
 Email:  $email\n
 Telefono:  $telefono\n
 Asunto:  $asunto \n
 Texto:  $texto\n
 ----------------------------------------------------------------------------\n
 "
//Cuerpo en Texto plano
    
if(!$mail->Send()){
      echo 
"Error: " $mail->ErrorInfo;
    }else{
      echo 
"El Correo se ha enviado satisfactoriamente";
    }
?>
El problema estriba en que no recibo la informacion que se rellena en el formulario solo esto:

El mensaje se a enviado el dia: 21.06.2012 a las: 19:09:03 ---------------------------------------------------------------------------- Nombre: Email: Telefono: Asunto: Texto: ----------------------------------------------------------------------------

Nada de email, telefono etc
Tendre que mover las variables del formulario mas abajo por debajo de request ???

Sera que el formulario las variables estan con GET y no con POST, como veis en enviar_contacto.php estn en GET tambien y no en POST.


Muchisimas gracias, Un saludo

Última edición por manyblue; 21/06/2012 a las 14:25