欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php发送网页邮件的格式(服务器是unix),该怎么解决

程序员文章站 2024-01-09 23:23:16
...
php发送网页邮件的格式(服务器是unix)
因为服务器事unix的所以用mail函数就可以发邮件,我现在要作的就是像中华英才一样给客户发送简历带有格式那种~~~~

------解决方案--------------------
什么动态呢,你是指那个message那里面的信息是动态的吗,这个很容易啊!
你这里插入一些PHP的表单变量(用户端输入的表单数据),不就可以了吗
------解决方案--------------------
看phpmail类的例子
------解决方案--------------------

设定邮件的头信息中的content-type
Content-Type: text/html; charset="你自己的编码"

从mail的第4个参数设定。
lz参考一下文档,有例子
http://jp.php.net/manual/en/function.mail.php
------解决方案--------------------
class smtp
{
/* Public Variables */
var $smtp_port;
var $time_out;
var $host_name;
var $log_file;
var $relay_host;
var $debug;
var $auth;
var $user;
var $pass;
/* Private Variables */
var $sock;

/* Constractor */
function smtp($relay_host = "", $smtp_port = 25,$auth = false,$user,$pass)
{
$this->debug = FALSE;
$this->smtp_port = $smtp_port;
$this->relay_host = $relay_host;
$this->time_out = 30; //is used in fsockopen()
#
$this->auth = $auth;//auth
$this->user = $user;
$this->pass = $pass;
#
$this->host_name = "localhost"; //is used in HELO command
$this->log_file = "error.txt";
$this->sock = FALSE;
}

/* Main Function */
function sendmail($to, $from, $subject , $body, $mailtype, $cc = "", $bcc = "", $additional_headers = "")
{
$mail_from = $this->get_address($this->strip_comment($from));
$body = ereg_replace("(^|(\r\n))(\.)", "\1.\3", $body);
$header= "MIME-Version:1.0\r\n";

if($mailtype=="HTML")
{
$header .= "Content-Type:text/html;charset=utf-8\r\n";
//$header .= "Content-Transfer-Encoding: base64\n\n";
}
$header .= "To: ".$to."\r\n";

if ($cc != "")
{
$header .= "Cc: ".$cc."\r\n";
}

$header .= "From: $from\r\n";
$header .= "Subject: ".$subject."\r\n";
$header .= $additional_headers;
$header .= "Date: ".date("r")."\r\n";
$header .= "X-Mailer:By Redhat (PHP/".phpversion().")\r\n";
list($msec, $sec) = explode(" ", microtime());
$TO = explode(",", $this->strip_comment($to));

if ($cc != "")
{
$TO = array_merge($TO, explode(",", $this->strip_comment($cc)));
}

if ($bcc != "")
{
$TO = array_merge($TO, explode(",", $this->strip_comment($bcc)));
}

$this->Headers = $header;
$sent = TRUE;

foreach ($TO as $rcpt_to)
{
$rcpt_to = $this->get_address($rcpt_to);
if (!$this->smtp_sockopen($rcpt_to))
{
$this->log_write("Error: Cannot send email to ".$rcpt_to."\n");
$sent = FALSE;
continue;
}

if ($this->smtp_send($this->host_name, $mail_from, $rcpt_to, $header, $body))