Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/10/2006, 17:22
Avatar de neopegaso
neopegaso
 
Fecha de Ingreso: junio-2006
Mensajes: 6
Antigüedad: 17 años, 11 meses
Puntos: 0
Código para mandar correos!

Hola amigos:
Disculpen las molestias, pero el problema es que tengo la cabeza hecha agua, pues estoy tratando de mandar correos con PHP desde un servidor pero no hay manera de que tenga resultado.
He probado con una gran cantidad de códigos pero ninguno me da resultados, he aquí uno de los tantos con los que he probado.

Código:
<?

class cMailer{

var $_Addresses;
var $_countAdd = 0;
var $_ConexionSMTP;
var $_Sender;
var $_server;
var $_Subject = "";

function cMailer(){
}

function AddAddress($address){
$this->_Addresses[$this->_countAdd] = $address;
$this->_countAdd++;
}

function AddSender($sender){
$this->_Sender = $sender;
}

function AddMessage($message){
$this->_Message = $message;
}

function AddSubject($subject){
$this->_Subject = $subject;
}

function Send(){

$strEHLO = "HELO ".$this->_server."\r\n";
fputs($this->_ConexionSMTP,$strEHLO);

$strMAIL = "MAIL FROM: ".$this->_Sender."\r\n";
fputs($this->_ConexionSMTP,$strMAIL);

for($i=0;$i<$this->_countAdd;$i++){
$strRCPT .= "RCPT TO: ".$this->_Addresses[$i]."\r\n";
}
$strRCPT .= "\r\n";
fputs($this->_ConexionSMTP,$strRCPT);


$strDATA1 = "DATA\r\n";
fputs($this->_ConexionSMTP,$strDATA1);


if($this->_Subject != ""){

$strS = "Subject: ".$this->_Subject."\r\n\r\n";
fputs($this->_ConexionSMTP,$strS);
}


$strDATA2 = $this->_Message."\r\n.\r\n";
fputs($this->_ConexionSMTP,$strDATA2);

fputs($this->_ConexionSMTP,"QUIT\r\n");
fclose($this->_ConexionSMTP);

}

function AddHost($host,$port=25){
$this->_ConexionSMTP = fsockopen("$host","$port",$e,$em,5) or die("no puedorl");
echo fgets($this->_ConexionSMTP,4096);
$this->_server = $host;
}

}

?>
y aquí la página que llama a cmialer.php


Código:
<?

set_time_limit(0);

include("cmailer.php");

$m = new cMailer();
$m->AddAddress("[email protected]");
$m->AddAddress("[email protected]");

$m->AddSender("[email protected]");
$m->AddSubject("Mensaje de prueba");

$m->AddMessage("Este es un sencillo mensaje de prueba");

$m->AddHost("dominio.com");

$m->Send();

?>Despues de configurarlo(ponerle el host, lo correos y todo)me dice: 220 ucihostx1.uci.cu ESMTP
pero del correo nada.
Por favor si alguien tiene otro código que funcione, se lo voy a agradecer...
Gracias por adelantado!!!!
PD:Usando CMS este server manda correos