Foros del Web » Administración de Sistemas » LAMP »

Enviar Mails en Appserver

Estas en el tema de Enviar Mails en Appserver en el foro de LAMP en Foros del Web. Hola compañeros! Que tal? Les cuento, tengo un problema con esto.. ya no se que mas intentar para hacer que ufncione... Tengo mi servidor web ...
  #1 (permalink)  
Antiguo 16/02/2011, 10:58
 
Fecha de Ingreso: abril-2009
Mensajes: 52
Antigüedad: 15 años, 7 meses
Puntos: 0
Enviar Mails en Appserver

Hola compañeros!

Que tal?

Les cuento, tengo un problema con esto..
ya no se que mas intentar para hacer que ufncione...

Tengo mi servidor web con appserver y quiero habilitar en envio de mails.

Pero no encuentro la manera, y los codigos estan bien...

Se los muestro:
(El bascio)
Código PHP:
<?php
$sfrom
="[email protected]"//cuenta que envia
$sdestinatario="[email protected]"//cuenta destino
$ssubject="asdas"//subject
$shtml="saasdasddsa"//mensaje
$sheader="From:".$sfrom."\nReply-To:".$sfrom."\n";
$sheader=$sheader."X-Mailer:PHP/".phpversion()."\n";
$sheader=$sheader."Mime-Version: 1.0\n";
$sheader=$sheader."Content-Type: text/html";
mail($sdestinatario,$ssubject,$shtml,$sheader);
?>
Luego tengo este que es mas elaborado, que funciona ya que lo tengo en otro servidor y anda perfectamente, pero creo que es SMTP
(es el que me gustaria usar)
contacto.php
Código PHP:
<Form method="post" action="mailform.php">
        <
p>Nombre:<br />
          <
label>
            <
input name="textnombre1" type="text" id="nombre"  tabindex="1"/>
          </
label>
          <
br />
          
Telefono:<br />
          <
input name="texttelefono1" type="text" id="telefono" tabindex="2" />
          <
br />
          
Email:<br />
          <
input name="textemail1" type="text" id="email" tabindex="3"/><br />
Empresa:<br />
          <
input name="textempresa" type="text" id="email" tabindex="4"/>
          <
br />
          
Ciudad:<br />
          <
input name="textciudad" type="text" id="email" tabindex="5"/>
          <
br />
          
Mensaje:<br />
          <
textarea name="textmensaje1" cols="40" rows="7" id="mensaje" tabindex="6"></textarea>
        </
p>
        <
p>Codigo de Seguridad<br />
          <
img src="captcha.php" width="100" height="30" vspace="3"><br>
        <
input name="tmptxt" type="text" size="18" tabindex="7"
        
Ingresa el codigo Aqu&#237;<br>
          
<input name="enviar" type="submit" id="enviar" value="Enviar Consulta" tabindex="8">
        </
p>
      </
form
mailfrom.php
Código PHP:
<?  
ini_set
('display_errors','0');
include_once(
"class.phpmailer.php");

// Correo electrónico de su empresa
$adminaddress "[email protected]"

// Dirección de su web incluido http://www. 
$siteaddress ="http://www.simjagroup.com.ar"

// Nombre de su empresa 
$sitename "Simja Group"

/*******************************************************/

$date date("m/d/Y H:i:s");

if (
$_SERVER['REMOTE_ADDR'] == ""
    
$ip "no ip";
else 
    
$ip getHostByAddr($_SERVER['REMOTE_ADDR']);


if (
$_POST['enviar'] != ""){  
session_start();
    if (
$_SESSION['tmptxt'] == $_POST['tmptxt']) {


    
// Mail al administrador...
    
$mail = new PHPMailer();
    
$mail->From     $adminaddress;
    
$mail->FromName $sitename;
    
$mail->AddAddress($adminaddress);
    
$mail->AddReplyTo($adminaddress);
    
$mail->IsHTML(false);                               // send as HTML
    
$mail->Subject  =  "Consulta";
    
$mail->Body  =     "Enviado desde la web:\n
------------------------------    
Nombre: "
.$_POST['textnombre1']."
Telefono: "
.$_POST['texttelefono1']."
Email: "
.$_POST['textemail1']."
Ciudad: "
.$_POST['textciudad']."
Empresa: "
.$_POST['textempresa']."
Mensaje: "
.$_POST['textmensaje1']."
------------------------------\n

Otros datos del usuario :
------------------------------
Navegador: "
.$_SERVER['HTTP_USER_AGENT']."
Hostname: "
.$ip."
IP address: "
.$_SERVER['REMOTE_ADDR']."
Fecha/Hora:  "
.$date
$mail->Send();

Header ("Location: gracias.php");
} else {
        
Header ("Location: error_contacto.php");
    }}

?>
class.phpmailer.php
http://www.gunz.bad-zone.com/mail/class.phpmailer.txt
(les dejo el link a un txt xq no me deja ponerlo aca)


Y bueno dps tambien estan los extras del captcha y el gracias

Alguno tiene alguna idea de como solucionarlo?

Desde ya muchsimas gracias!

Saludos!

Última edición por Bazzana; 16/02/2011 a las 11:24
  #2 (permalink)  
Antiguo 17/02/2011, 10:29
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 15 años
Puntos: 16
Respuesta: Enviar Mails en Appserver

para enviar el mail utilizando un servidor smtp, deberás especificárselo a la clase phpmailer. y además de eso, necesitarás tener junto al class.phpmailer.php el class.smtp.php.

Código PHP:
  $mail->IsSMTP();
  
$mail->SMTPAuth true;        // si el servidor necesita autenticación hay que indicar nombre de usuario y contraseña, sinó no es necesario.

  
$mail->Host "smtp.tuserver.com";
  
$mail->Port "25";

  
$mail->Username "[email protected]";
  
$mail->Password "tupass"
prueba y nos comentas.

un saludo.
  #3 (permalink)  
Antiguo 17/02/2011, 22:57
 
Fecha de Ingreso: abril-2009
Mensajes: 52
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Enviar Mails en Appserver

primero que nada, gracias...

te cuento lo que hice, cree un archivo llamado class.smtp.php
y lo configure con mis datos..
pero sigen sin llegarme los mails... que puedo hacer?
ya probe mil maneras, no tengo que habilitar algo de php.ini? o una dll no se...

no tienen un sistema que funcione para que yo lo adapte y lo use?

desde ya gracias
  #4 (permalink)  
Antiguo 18/02/2011, 08:46
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 15 años
Puntos: 16
Respuesta: Enviar Mails en Appserver

no me has entendido bien :) ese código que te he dado es para añadir al que ya tienes de phpmailer. el class.smtp.php es otra clase que necesita la clase class.phpmailer.php para funcionar a través de smtp.

en la página oficial de phpmailer tienes ejemplos de como utilizar correctamente la clase, además de la descarga de ambos archivos.

puedes descargarte directamente las 2 clases desde -aquí-.

aquí un ejemplo de un envío de e-mail a través de phpmailer:

Código PHP:
    $fecha $_POST['fecha'];
    
$hora $_POST['hora'];
    
$departamento $_POST['departamento'];
    
$nombre $_POST['nombre'];
    
$apellidos $_POST['apellidos'];
    
$nombre_completo $nombre.' '.$apellidos;
    
$telefono $_POST['telefono'];
    
$email $_POST['email'];
    
$mensaje strip_tags($_POST['mensaje']);
        
$mensaje_html preg_replace('/\n/' '<br />' $mensaje);
    
    switch( 
$departamento )
    {
        case 
'info':
            
$dep '[email protected]';
            break;
        case 
'admin':
            
$dep '[email protected]';
            break;
        case 
'cont':
            
$dep '[email protected]';
            break;
    }
    
    if( !
$nombre || !$email || !$mensaje )
    {
        
header('Location: /');
        exit();
    }
    
    require_once(
'class.phpmailer.php');
    
//include("class.smtp.php");

    
$mail = new PHPMailer();
    
$mail->SetLanguage("es""");  // para incluír esta línea tal cual está, deberás tener el archivo de lenguaje para phpmailer (en este caso el español) en la misma carpeta que las clases.
    
$mail->CharSet "UTF-8";

    
$mail->IsSMTP();
    
$mail->SMTPAuth true;

    
$mail->Host "smtp.server.com";
    
$mail->Port "25";

    
$mail->Username "[email protected]";
    
$mail->Password "password";

    
$mail->AddAddress($dep);
    
$mail->AddReplyTo($email $nombre_completo);
    
$mail->SetFrom($email $nombre_completo);
    
    
$mail->IsHTML(true);
    
    
$mail->Subject "asunto";
    
    
$mail->Body $mensaje_html// mensaje con formato (puede incluír html)
    
    
$mail->AltBody $mensaje// mensaje sin formato para clientes de e-mail que sólo soporten texto plano
    
    
if( !$mail->Send() )
    {
        echo 
"error";
        exit();
    }
    else
    {
        echo 
"enviado";
        exit();
    } 
prueba y nos cuentas.

saludos.

Última edición por uikekarallo; 18/02/2011 a las 08:53 Razón: añado ejemplo de phpmailer
  #5 (permalink)  
Antiguo 18/02/2011, 12:25
 
Fecha de Ingreso: abril-2009
Mensajes: 52
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Enviar Mails en Appserver

me tira como 10 erores, varios los solucione pero este ya no
Fatal error: Cannot access empty property in C:\AppServ\www\mail\class.phpmailer.php on line 271
:S tiene mas complicaciones esto...
e incluso con la funcion mail de php nunca me andubo
:S
  #6 (permalink)  
Antiguo 18/02/2011, 13:23
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 15 años
Puntos: 16
Respuesta: Enviar Mails en Appserver

el único error que podría dar es de autenticación. el problema sólo tienes en el servidor local?
  #7 (permalink)  
Antiguo 18/02/2011, 13:52
 
Fecha de Ingreso: abril-2009
Mensajes: 52
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Enviar Mails en Appserver

Si ese es el problema que me da..
La autentificacion me aparece root no se qe..

Y no entedi tu pregunta..
  #8 (permalink)  
Antiguo 18/02/2011, 14:05
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 15 años
Puntos: 16
Respuesta: Enviar Mails en Appserver

quiero decir si habías probado a subir los archivos a un servidor o lo probabas desde tu servidor en tu disco local.

el problema creo que lo tenías en las clases de php-mailer, que estaban completamente desactualizadas para su uso en php 5. con las clases actualizadas, todo debe funcionar correctamente.

saludos!
  #9 (permalink)  
Antiguo 18/02/2011, 14:17
 
Fecha de Ingreso: abril-2009
Mensajes: 52
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Enviar Mails en Appserver

Lo estoy probando desde un vps que contrate e instale el appserver.
Me funciona correctamente, lo que no me anda es la autentificacion
  #10 (permalink)  
Antiguo 18/02/2011, 14:21
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 15 años
Puntos: 16
Respuesta: Enviar Mails en Appserver

eso ya es cosa de la configuración... en todo caso, si funciona, está resuelto el problema ^^

un saludo.

Etiquetas: enviar, mails
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 11:59.