精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● PHP>>功能代码>>邮件相关>>让例子来说话(sock/smtp)

主题:让例子来说话(sock/smtp)
发信人: jackyz()
整理人: dalasthunder(2002-07-25 06:30:13), 站内信件
SMTP sock应用DEMO!用php发邮件
----------------------------------------------------------------------
----
server_name可以用php自己的dns解析函数,
以下是核心演示,winNT,mail server is Imail,php3.0.6
需要修改php3.ini打开imap模块,在linux上要编译php --with-IMAP
<?php

function send_email ( $to,$from,$subject,$message ){
global $SERVER_NAME;
$fp = fsockopen ( $SERVER_NAME, 25 );
if ( $fp ){

echo "connected";

set_socket_blocking( $fp, false );
$output=fgets($fp,2500);

echo $output;

if (! ereg ( "^220", $output ) ) {
exit();
} else {

echo "talking ";

//set_socket_blocking ( $fp, true );
fputs ( $fp, "HELO $from_domain\n" );
$output = fgets ( $fp, 2000 );

echo $output;

fputs ( $fp, "MAIL FROM: <$from>\n" );
        $output = fgets ( $fp, 2000 );
        
        echo $output;
        
        fputs ( $fp, "RCPT TO: <$to>\n" );
        $output = fgets ( $fp, 2000 );
        
        echo $output;
        
        fputs($fp,"DATA\n");
        fputs($fp,"To: $to\n");
        fputs($fp,"From: $from\n");
        fputs($fp,"Subject: $subject\n\n");
        fputs($fp,"$message\n\n.\n");
        fputs($fp, "QUIT\n" );
      }
    }
    fclose($fp);
  }
   
  $SERVER_NAME="127.0.0.1";
  $from_domain="ws";
  $to="[email protected]";
  $from="[email protected]";
  $subject="test SMTP through PHP  中文";
  $message="Send email via PHP smtp connectionsnnnothing happenesn 中文
中文中文";
  
  send_email ( $to,$from,$subject,$message );
  echo "ok lah";
?>

----------------------------------------------------------------------
----
转载自"深圳之窗/PHP论坛"
原文由"老虎包子"发表

--
-----------------------------
      /|____________________
(>***(O]____________________)
      \| [重剑无锋◎大巧不工]
-----------------------------

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.135.109]

[关闭][返回]