← Back to team overview

sslug-teknik team mailing list archive

Sv: send mail program

 

> Det skal bare være muligt at sende mail og Exchange er SMTP serveren.

Hvad med den her?

 function Mail_To($Subject,$Email,$To,$From,$SMTPServer)
 {
 // $SMTPServer="192.38.187.130";
  $server=fsockopen($SMTPServer,25, &$errno, &$errstr, 30);
  
  if(!$server)
   echo "$errstr ($errno)<br>\n";

  file://Skip the mail  
  $reply=fgets($server,2000);
  
  $hellomsg="HELO fyens.dk\r\n";
  $mailfrom="MAIL FROM:<".$From.">\r\n";
  $rcptto=sprintf("RCPT TO:<%s>\r\n",$To);
  
  file://Send HELO MSG
  fputs($server,$hellomsg);
  $reply=fgets($server,2000);

//  echo "sent \"HELO fyens.dk\r\n\" got $reply<br>";
  file://We have said hello
  if(!ereg("250",$reply))
  {
   fputs($server,"QUIT \r\n");
   fclose($server);
   return($reply);
  }
  
  fputs($server,$mailfrom);
  $reply=fgets($server,2000);

//  echo "sent \"MAIL FROM: nobody@xxxxxxxx\r\n\" got $reply<br>";
  
  if(!ereg("250",$reply))
  {
   fputs($server,"QUIT \r\n");
   fclose($server);
   return($reply);
  }
  
  fputs($server,$rcptto);
  $reply=fgets($server,2000);

 // echo "sent RCPT TO: $To\r\n got $reply<br>";

  if(!ereg("250",$reply))
  {
   fputs($server,"QUIT \r\n");
   fclose($server);
   return($reply);
  }
  
  fputs($server,"DATA\r\n");
  $reply=fgets($server,2000);
  if(!ereg("354",$reply))
  {
   fputs($server,"QUIT \r\n");
   fclose($server);
   return($reply);
  }

  fputs($server,"Subject:".$Subject."\r\n\r\n");
  fputs($server,$Email);
//  echo "Sent \"DATA \r\n$Email\" got $reply";
  
  fputs($server,"\r\n.\r\n.");
  $reply=fgets($server,2000);
 // echo $reply."<br>";
  if(!ereg("250",$reply))
  {
   fputs($server,"QUIT \r\n");
   fclose($server);
   return($reply);
  }
    
  fputs($server,"QUIT \r\n");
  fclose($server);
  return("mail_sent<br>");
 }