首页上一页 1 下一页尾页 6 条记录 1/1页
PHP典型模块大全--第5章问题
发表在PHP图书答疑
2010-01-06
是否精华
是
否
版块置顶:
是
否
设置时间:
非永久
永久
起始时间:
结束时间:
是否扣分:
是
否
开始当我点击注册时:报“不支持pop3,...”,后来装个pop3服务器,又报“0”(这是弹出对话筐的消息),
然后分析,是“详细信息”里内容没填,所以没有写入数据库就报“0”,最后信息都写全了吧,提示注册成功,去我的邮箱一看,没有内容,这个问题弄得我好郁闷啊,折腾半天都不行,
我也看前辈们说的,我也配置Smtp和pop3邮件服务器,并且创建了指定的一个邮箱来发送邮箱,但就是收不到内容!
请大哥哥大姐姐们能否帮我,小弟先谢谢了。
然后分析,是“详细信息”里内容没填,所以没有写入数据库就报“0”,最后信息都写全了吧,提示注册成功,去我的邮箱一看,没有内容,这个问题弄得我好郁闷啊,折腾半天都不行,
我也看前辈们说的,我也配置Smtp和pop3邮件服务器,并且创建了指定的一个邮箱来发送邮箱,但就是收不到内容!
请大哥哥大姐姐们能否帮我,小弟先谢谢了。
精彩评论 6
2010-01-06
地板
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
你好!
你的问题是已经注册成功了,但是并没有发送邮件到你的邮箱。
其实这就是发送邮件的问题了,你修改了发送邮件页面的代码了吗??如果没有修改时一定不会成功的。
你必须将发送邮件的相关信息修改为你配置的SMTP服务器相关信息。而不可以单纯的使用笔者个人数据。
如:http://192.168.1.149....这是笔者个人测试时候的IP地址,你必须将此IP修改为你个人的IP地址。
还有from的邮箱地址你必须填入你配置的SMTP邮箱名称。
如果还有什么不是非常明白的问题 欢迎提问
[/FIELDSET]
回复:
首先谢谢您的回复。
我修改了发送邮件的代码,我没看见有关调试ip的地方,我修改后的代码是:
<?php
header('Content-Type:text/html;charset=gb2312');
include_once 'conn/conn.php';
$reback = '0';
$url = 'http://'.$_SERVER['SERVER_NAME'].dirname($_SERVER['SCRIPT_NAME']).'/activation.php';
$url .= '?name='.trim($_GET['name']).'&pwd='.md5(trim($_GET['pwd']));
//发送激活邮件
$subject="激活码的获取";
$mailbody='注册成功。您的激活码是:'.'<a href="'.$url.'" target="_blank">'.$url.'</a><br>'.'请点击该地址,激活您的用户!';
$envelope["from"]="quanweiwang55@sina.com";
$part1["type"] = TYPEMULTIPART;
$part1["subtype"] = "mixed";
$part2["type"] = TYPETEXT;
$part2["subtype"] = "plain";
$part2["encoding"] = ENCBINARY;
$part2["contents.data"] = "$mailbody\n\n\n\t";
$body[1] = $part1;
$body[2] = $part2;
$message=imap_mail_compose($envelope, $body);
$to=$_GET['email'];
list($msgheader,$msgbody)=split("\r\n\r\n",$message,2);
$sendes=@imap_mail($to,$subject,$msgbody,$msgheader);
if(false == $sendes or $sendes == ''){
$reback = '-1';
}else{
$sql = "insert into tb_member(name,password,question,answer,email,realname,birthday,telephone,qq) values('".trim($_GET['name'])."','".md5(trim($_GET['pwd']))."','".$_GET['question']."','".$_GET['answer']."','".$_GET['email']."','".$_GET['realname']."','".$_GET['birthday']."','".$_GET['telephone']."','".$_GET['qq']."')";
$num = $conne->uidRst($sql);
if($num == 1){
$reback = '1';
}
}
echo $reback;
?>
我用新浪邮箱的,因为他支持pop3.
您看看我这应该改什么,谢谢:)
你好!
你的问题是已经注册成功了,但是并没有发送邮件到你的邮箱。
其实这就是发送邮件的问题了,你修改了发送邮件页面的代码了吗??如果没有修改时一定不会成功的。
你必须将发送邮件的相关信息修改为你配置的SMTP服务器相关信息。而不可以单纯的使用笔者个人数据。
如:http://192.168.1.149....这是笔者个人测试时候的IP地址,你必须将此IP修改为你个人的IP地址。
还有from的邮箱地址你必须填入你配置的SMTP邮箱名称。
如果还有什么不是非常明白的问题 欢迎提问
[/FIELDSET]
回复:
首先谢谢您的回复。
我修改了发送邮件的代码,我没看见有关调试ip的地方,我修改后的代码是:
<?php
header('Content-Type:text/html;charset=gb2312');
include_once 'conn/conn.php';
$reback = '0';
$url = 'http://'.$_SERVER['SERVER_NAME'].dirname($_SERVER['SCRIPT_NAME']).'/activation.php';
$url .= '?name='.trim($_GET['name']).'&pwd='.md5(trim($_GET['pwd']));
//发送激活邮件
$subject="激活码的获取";
$mailbody='注册成功。您的激活码是:'.'<a href="'.$url.'" target="_blank">'.$url.'</a><br>'.'请点击该地址,激活您的用户!';
$envelope["from"]="quanweiwang55@sina.com";
$part1["type"] = TYPEMULTIPART;
$part1["subtype"] = "mixed";
$part2["type"] = TYPETEXT;
$part2["subtype"] = "plain";
$part2["encoding"] = ENCBINARY;
$part2["contents.data"] = "$mailbody\n\n\n\t";
$body[1] = $part1;
$body[2] = $part2;
$message=imap_mail_compose($envelope, $body);
$to=$_GET['email'];
list($msgheader,$msgbody)=split("\r\n\r\n",$message,2);
$sendes=@imap_mail($to,$subject,$msgbody,$msgheader);
if(false == $sendes or $sendes == ''){
$reback = '-1';
}else{
$sql = "insert into tb_member(name,password,question,answer,email,realname,birthday,telephone,qq) values('".trim($_GET['name'])."','".md5(trim($_GET['pwd']))."','".$_GET['question']."','".$_GET['answer']."','".$_GET['email']."','".$_GET['realname']."','".$_GET['birthday']."','".$_GET['telephone']."','".$_GET['qq']."')";
$num = $conne->uidRst($sql);
if($num == 1){
$reback = '1';
}
}
echo $reback;
?>
我用新浪邮箱的,因为他支持pop3.
您看看我这应该改什么,谢谢:)