note 36819 added to function.fsockopen

From: Date: Thu, 23 Oct 2003 16:30:14 +0000
Subject: note 36819 added to function.fsockopen
Groups: php.notes 
Request: Send a blank email to php-notes+get-59180@lists.php.net to get a copy of this message
Try this. Use AUTH when necessary. Read RFC 821 when having problems. <?php $handle = smtp_connect($smtp_server, 25, 30, 1, 1, 1); echo smtp_command($handle, "EHLO $domain\r\n", 1, 1); echo smtp_command($handle, "MAIL FROM:<$from_mail>\r\n", 1, 1); echo smtp_command($handle, "RCPT TO:<$to_mail>\r\n", 1, 1); echo smtp_command($handle, "DATA\r\n", 1, 1); echo smtp_command($handle, "$message\r\n.\r\n", 1, 1); // don't do it like this - it will hang up // echo smtp_command($handle, "$message", 1, 1); // echo smtp_command($handle, "\r\n.\r\n", 1, 1); echo smtp_command($handle, "QUIT\r\n", 1, 1); smtp_close($handle); function smtp_connect($host, $port, $timeout=30, $echo_command=False, $echo_response=False, $nl2br=False) { $errno = 0; $errstr = 0; if($echo_command) { if($nl2br) { echo nl2br("CONNECTING TO $host\r\n"); } else { echo "CONNECTING TO $host\r\n"; } } $handle = fsockopen($host, $port, $errno, $errstr, $timeout); if(!$handle) { if($echo_command) { if($nl2br) { echo nl2br("CONNECTION FAILED\r\n"); } else { echo "CONNECTION FAILED\r\n"; } } return False; } if($echo_command) { if($nl2br) { echo nl2br("SUCCESS\r\n"); } else { echo "SUCCESS\r\n"; } } $response = fgets($handle,1); $bytes_left = socket_get_status($handle); if ($bytes_left > 0) { $response .= fread($handle, $bytes_left["unread_bytes"]); } if($echo_response) { if($nl2br) { echo nl2br($response); } else { echo $response; } } return $handle; } function smtp_command($handle, $command, $echo_command=False, $nl2br=False) { if($echo_command) { if($nl2br) { echo nl2br($command); } else { echo $command; } } fputs($handle, $command); $response = fgets($handle,1); $bytes_left = socket_get_status($handle); if ($bytes_left > 0) { $response .= fread($handle, $bytes_left["unread_bytes"]); } if($nl2br) { return nl2br($response); } else { return $response; } } function smtp_close($handle) { fclose($handle); } ?> ---- Manual Page -- http://www.php.net/manual/en/function.fsockopen.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+36819 Delete -- http://master.php.net/manage/user-notes.php?action=delete+36819&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+36819&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#59180) next »