Ⅰ sendemail.php 在web hosting 上不工作怎么办 有别的办法么请高手指点。
<?php
/*
Template Name: Contact
*/
?>
<?php get_header(); ?>
<script type="text/javascript">
$(document).ready(function(){
$('#contact').ajaxForm(function(data) {
if (data==1){
$('#success').fadeIn("slow");
$('#bademail').fadeOut("slow");
$('#badserver').fadeOut("slow");
$('#contact').resetForm();
}
else if (data==2){
$('#badserver').fadeIn("slow");
}
else if (data==3)
{
$('#bademail').fadeIn("slow");
}
});
});
</script>
<!-- begin colLeft -->
<div id="colLeft">
<h1>Contattaci</h1>
<p><?php echo stripslashes(stripslashes(get_option('boldy_contact_text')))?></p>
<p id="success" class="successmsg" style="display:none;">La sua mail è stata inviata! Grazie!</p>
<p id="bademail" class="errormsg" style="display:none;">Inserisca il suo nome, un messaggio e un indirizzo email valido.</p>
<p id="badserver" class="errormsg" style="display:none;">Il suo indirizzo email non riuscita. Riprovare più tardi.</p>
<form id="contact" action="<?php bloginfo('template_url'); ?>/sendmail.php" method="post">
<label for="name">Nome: *</label>
<input type="text" id="nameinput" name="name" value=""/>
<label for="tel">tel: *</label>
<input type="text" id="telinput" name="tel" value=""/>
<label for="email">Email: *</label>
<input type="text" id="emailinput" name="email" value=""/>
<label for="comment">Il Suo messaggio: *</label>
<textarea cols="20" rows="7" id="commentinput" name="comment"></textarea><br />
<input type="submit" id="submitinput" name="submit" class="submit" value="INVIA MESSAGGIO"/>
<input type="hidden" id="receiver" name="receiver" value="<?php echo get_option('boldy_contact_email')?>"/>
</form>
</div>
<!-- end colleft -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Ⅱ 如何使用sendEmail发送邮件
方法1 安装sendmail即可使用, mail -s "test" [email protected] <content.txt
bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用。
方法2。利用外部的smpt服务器
而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的:
修改/etc/nail.rc (/etc/mail.rc)
set [email protected] smtp=smtp.domain.comset smtp-auth-user=username smtp-auth-password=passwordset smtp-auth=login
说明:
from是发送的邮件地址
smtp是发生的外部smtp服务器的地址
smtp-auth-user是外部smtp服务器认证的用户名
smtp-auth-password是外部smtp服务器认证的用户密码
smtp-auth是邮件认证的方式
配置成功后,就可以使用了
可以发送一封邮件测试一下:
mail -s "test" [email protected] <content.txt 其中-s后面的是邮件标题,[email protected]是收件人地址,content.txt里面是邮件正文
mail 命令的使用
mailq可以查看系统队列
Ⅲ php 程序问题发送不了邮件
可以用phpmailer类发送,兼容性很好,来做邮件发送,这也是很多PHP程序所采用的一个类发送
<?php
require(ROOT.'/class/phpMailer.class.php');//邮件发送类
/**
*发送邮件
*@paramstring$to接收人邮件地址
*@paramstring$title邮件标题
*@paramstring$contents邮件内容支持HTML格式
*@paramstring$type判断是否要加附件
*@paramstring$accessory附件的名字
*@return成功返回true,失败返回错误信息
*/
functionsendEmail($to,$title,$contents,$type='',$accessory=''){
$mail=newPhpMailer(true);
$mail->IsSMTP();
$mail->CharSet="UTF-8";//编码
$mail->Debugoutput='html';//支持HTML格式
$mail->Host=T_SMTP_SERVER;//HOST地址
$mail->Port=25;//端口
$mail->SMTPAuth=true;
$mail->Username=T_SMTP_LOGIN;//用户名
$mail->Password=T_SMTP_PASSWORD;//密码
$mail->SetFrom(T_SMTP_FROM,T_SMTP_FROM_NAME);//发件人地址,发件人名称
$mail->AddAddress($to);//收信人地址
//$mail->Subject="=?utf-8?B?".base64_encode()."?=";
if(!empty($type)){
$mail->AddAttachment($type,$accessory);//添加附件,并指定名称
}
$mail->Subject=$title;//邮件标题
$mail->MsgHTML($contents);
if($mail->Send()){
returntrue;
}else{
return$mail->errorMessage();
}
}
?>
望采纳 Thx
Ⅳ 【请教】关于在线发邮件代码 php
register_globals 的问题, 换空间php.ini的设置不一样了。
$body没有值,因为没有定义。。。。
用$_POST['body']取值。
这是正确的写法。
Ⅳ 如何在PHP网页中发送邮件
先建一个邮件发送的类 sendEmail.class.php页面:
<?
class smail {
//您的SMTP 服务器供应商,可以是域名或IP地址
var $smtp = "";
//SMTP需要要身份验证设值为 1 不需要身份验证值为 0,现在大多数的SMTP服务商都要验证,如不清楚请与你的smtp 服务商联系。
var $check = 1;
//您的email帐号名称
var $username = "";
//您的email密码
var $password = "";
//此email 必需是发信服务器上的email
var $s_from = "";
function smail ( $from, $password, $smtp, $check = 1 ) {
if( preg_match("/^[^\d\-_][\w\-]*[^\-_]@[^\-][a-zA-Z\d\-]+[^\-](\.[^\-][a-zA-Z\d\-]*[^\-])*\.[a-zA-Z]{2,3}/", $from ) ) {
$this->username = substr( $from, 0, strpos( $from , "@" ) );
$this->password = $password;
$this->smtp = $smtp ? $smtp : $this->smtp;
$this->check = $check;
$this->s_from = $from;
}
}
function send ( $to, $from, $subject, $message ) {
//连接服务器
$fp = fsockopen ( $this->smtp, 25, $errno, $errstr, 60);
if (!$fp ) return "联接服务器失败".__LINE__;
set_socket_blocking($fp, true );
$lastmessage=fgets($fp,512);
if ( substr($lastmessage,0,3) != 220 ) return "错误信息1:$lastmessage".__LINE__;
//HELO
$yourname = "YOURNAME";
if($this->check == "1") $lastact="EHLO ".$yourname."
";
else $lastact="HELO ".$yourname."
";
fputs($fp, $lastact);
$lastmessage == fgets($fp,512);
if (substr($lastmessage,0,3) != 220 ) return "错误信息2:$lastmessage".__LINE__;
while (true) {
$lastmessage = fgets($fp,512);
if ( (substr($lastmessage,3,1) != "-") or (empty($lastmessage)) )
break;
}
//身份验证
if ($this->check=="1") {
//验证开始
$lastact="AUTH LOGIN"."
";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 334) return "错误信息3:$lastmessage".__LINE__;
//用户姓名
$lastact=base64_encode($this->username)."
";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 334) return "错误信息4:$lastmessage".__LINE__;
//用户密码
$lastact=base64_encode($this->password)."
";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != "235") return "错误信息5:$lastmessage".__LINE__;
}
//FROM:
$lastact="MAIL FROM: <". $this->s_from . ">
";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 250) return "错误信息6:$lastmessage".__LINE__;
//TO:
$lastact="RCPT TO: <". $to .">
";
fputs( $fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 250) return "错误信息7:$lastmessage".__LINE__;
//DATA
$lastact="DATA
";
fputs($fp, $lastact);
$lastmessage = fgets ($fp,512);
if (substr($lastmessage,0,3) != 354) return "错误信息8:$lastmessage".__LINE__;
//处理Subject头
$head="Subject: $subject
";
$message = $head."
".$message;
//处理From头
$head="From: $from
";
$message = $head.$message;
//处理To头
$head="To: $to
";
$message = $head.$message;
//加上结束串
$message .= "
.
";
//发送信息
fputs($fp, $message);
$lastact="QUIT
";
fputs($fp,$lastace);
fclose($fp);
return 0;
}
}
?>
然后建立一个发送页面:sendEmail.php
<?php
require_once('sendemail.class.php');
if((isset($_POST["send"]))&&($_POST["send"]=="form1"))
{
//获取收件人地址
$sendto=$_POST['txt1'];
$sendfrom="发件人邮箱";
$mailpass="发件人邮箱密码";
$mailserver="邮箱服务器";
$subject=$_POST['txt3'];
$message =$_POST['textarea'];
$sm = new smail( $sendfrom, $mailpass, $mailserver);
$end = $sm->send( $sendto, $sendfrom, $subject, $message );
if( $end ) echo $end;
else echo "<script>alert('发送成功');</script>";
}
?>
<center>
<form style="width:524px; height:107px;" method="post" name="form1" id="form1" action="">
<table width="524" height="107" border="0" align="center">
<!--DWLayoutTable-->
<tr>
<td height="60" colspan="2" align="center" valign="middle" bgcolor="#999999"><font color="#339933" size="+4" face="隶书"><strong>发送电子邮件</strong></font></td>
</tr>
<tr>
<td width="109" height="44" align="left" valign="middle" bgcolor="#CCCC99"><strong><font size="5">收件人:</font></strong></td>
<td width="405" align="left" valign="middle" bgcolor="#CCCC99"><input type="text" name="txt1"/></td>
</tr>
<tr>
<td height="44" align="left" valign="middle" bgcolor="#99CCFF"><strong><font size="5">主题:</font></strong></td>
<td valign="middle" bgcolor="#99CCFF"><input type="text" name="txt3""/></td>
</tr>
<tr>
<td height="163" align="left" valign="middle" bgcolor="#66CCFF"><strong><font size="5">内容:</font></strong></td>
<td valign="top" bgcolor="#66CCFF"><textarea name="textarea" style="width:405px; height:163px"></textarea></td>
</tr>
<tr>
<td height="37" colspan="2" align="center" valign="middle" bgcolor="#6699CC"><input type="submit" value="发送"/></td>
</tr>
</table>
<input type="hidden" name="send" value="form1"/>
</form>
</center>
Ⅵ phpwind计划任务是怎么触发的
解决了,同意楼上的观点。方法如下:1、在ci的根目录下建php文件,例如autosendemail.php,内容如下:2、建批处理文件xxx.bat,内容如:“c:\php\php d:\web\autosendemail.php”3、在controller文件夹建email.php,里面有send方法,就可融入ci体系
Ⅶ 如何使用php中的mail函数发送html格式的信
采用phpmailer类,来做邮件发送,是很多PHP程序所采用的一个类发送
require(ROOT.'/class/phpMailer.class.php');//邮件发送类
/**
*发送邮件
*@paramstring$to接收人邮件地址
*@paramstring$title邮件标题
*@paramstring$contents邮件内容支持HTML格式
*@paramstring$type判断是否要加附件
*@paramstring$accessory附件的名字
*@return成功返回true,失败返回错误信息
*/
functionsendEmail($to,$title,$contents,$type='',$accessory=''){
$mail=newPhpMailer(true);
$mail->IsSMTP();
$mail->CharSet="UTF-8";//编码
$mail->Debugoutput='html';//支持HTML格式
$mail->Host=T_SMTP_SERVER;//HOST地址
$mail->Port=25;//端口
$mail->SMTPAuth=true;
$mail->Username=T_SMTP_LOGIN;//用户名
$mail->Password=T_SMTP_PASSWORD;//密码
$mail->SetFrom(T_SMTP_FROM,T_SMTP_FROM_NAME);//发件人地址,发件人名称
$mail->AddAddress($to);//收信人地址
//$mail->Subject="=?utf-8?B?".base64_encode()."?=";
if(!empty($type)){
$mail->AddAttachment($type,$accessory);//添加附件,并指定名称
}
$mail->Subject=$title;//邮件标题
$mail->MsgHTML($contents);
if($mail->Send()){
returntrue;
}else{
return$mail->errorMessage();
}
}
Ⅷ PHP配置了sendmail,细节如下,为什么还是不能成功发送邮件
不建议改动php.ini配置
可以采用 phpmailer类,来做邮件发送,这也是很多PHP程序所采用的一个类发送,你做出来的程序,给别人用或者开发,别人也跟着修改php.ini吧
require(ROOT.'/class/phpMailer.class.php');//邮件发送类
/**
*发送邮件
*@paramstring$to接收人邮件地址
*@paramstring$title邮件标题
*@paramstring$contents邮件内容
*@paramstring$type判断是否要加附件
*@paramstring$accessory附件的名字
*@return成功返回true,失败返回错误信息
*/
functionsendEmail($to,$title,$contents,$type='',$accessory=''){
$mail=newPhpMailer(true);
$mail->IsSMTP();
$mail->CharSet="UTF-8";//编码
$mail->Debugoutput='html';
$mail->Host=T_SMTP_SERVER;//HOST地址
$mail->Port=25;//端口
$mail->SMTPAuth=true;
$mail->Username=T_SMTP_LOGIN;//用户名
$mail->Password=T_SMTP_PASSWORD;//密码
$mail->SetFrom(T_SMTP_FROM,T_SMTP_FROM_NAME);//发件人地址,发件人名称
$mail->AddAddress($to);//收信人地址
//$mail->Subject="=?utf-8?B?".base64_encode()."?=";
if(!empty($type)){
$mail->AddAttachment($type,$accessory);//添加附件,并指定名称
}
$mail->Subject=$title;//邮件标题
$mail->MsgHTML($contents);
if($mail->Send()){
returntrue;
}else{
return$mail->errorMessage();
}
}
望采纳 Thx
Ⅸ PHP发送邮件的源码
mail()函数发送的邮件基本上都被当作垃圾邮件过滤掉了,很少会到达用户邮箱的。因为它不需要邮件帐户就可以发邮件。商业网站php中发送邮件都是用sendmail。