偶装vqsingup很失败,所以花一个晚上研究html和php(这两个偶都不懂,惭愧ing),写了这个小程序,希望高手帮忙改改。谢谢。
程序由2部分组成,singup.php和submit.php
[color=red:590bd6f809]singup.php:[/color:590bd6f809]
[color=blue:590bd6f809]<html>
<head>
<title></title>
</head>
<body>
<?php
$name = $HTTP_POST_VARS['yourname'];
$passwd1 = $HTTP_POST_VARS['passwd1'];
$passwd = $HTTP_POST_VARS['passwd2'];
?>
<h4>用户名请用3-8位数,不能用中文!</h4>
<form action=/submit.php method=POST>
用 户 名:
<input type=text name=yourname ><br>
您的密码:
<input type=password name=passwd1 ><br>
重复密码:
<input type=password name=passwd2 ><br>
<input type=submit value="确定"><input type=reset value="重设">
</form>
</body>
</html>[/color:590bd6f809]
[color=red:590bd6f809]submit.php:[/color:590bd6f809]
[color=blue:590bd6f809]<html>
<head>
<title></title>
</head>
<body>
<?php
$name = $HTTP_POST_VARS['yourname'];
$passwd1 = $HTTP_POST_VARS['passwd1'];
$passwd2 = $HTTP_POST_VARS['passwd2'];
if($passwd1 == $passwd2)
{
$user="$name@yourdomain.com";
$a=exec ("/home/vpopmail/bin/vadduser $user $passwd1");
if($a==NULL){echo ("恭喜申请成功!"); } else {echo $a;}
}else
{
echo "密码输入错误!";
}
?>
<p> <a href='index.php'>登录邮箱</a> </p>
<a href='singup.php'>重新注册</a>
</body>
</html>[/color:590bd6f809]
修改submit.php的yourdomain.com为你的域名,修改vadduser路径。这2个文件放在同一个目录
| laixi781211 回复于:2003-05-24 08:27:33 |
| 收集 |
| lcycc1 回复于:2003-05-24 08:42:35 |
| 运行里要root权限,怎么办??? |
| haohaoo 回复于:2003-05-24 08:51:59 |
| 不用啊,好象vpopmail这个用户的权限就行了 |
| lcycc1 回复于:2003-05-24 09:16:26 |
| 还得改进一下 |
| xmy 回复于:2003-05-24 09:19:24 |
| 对,只要有vpopmail的权限就可以了, |
| xmy 回复于:2003-05-24 09:23:51 |
| apache 的user、Group必须是vpopmail和vchkpw,而且:
chown vpopmail:vchkpw singup.php chown vpopmail:vchkpw submit.php 这样应该没问题。 |
| xmy 回复于:2003-05-24 09:24:44 |
| [quote:4488c54549="lcycc1"]还得改进一下[/quote:4488c54549]
大哥,帮我改改啊 |
| garfy 回复于:2003-05-24 11:30:09 |
| 支持原创,建议加精! |
| gadfly 回复于:2003-05-24 18:38:25 |
| 好呀,支持原创。
欢迎改进! |
| MAXidea 回复于:2003-05-25 10:39:02 |
| [quote:81c77d8135="xmy"]
$a=exec ("/home/vpopmail/bin/vadduser $user $passwd1"); [/quote:81c77d8135] 您的思路是对的,但是问题有: 1、您的PHP在本地主机执行才有效:/home/vpopmail/bin/vadduser该路径只能在本地主机上操作有效。在httpd中,即用户通过Web访问您的PHP文件时,他是没法访问/home/vpopmail/bin/vadduser。 2、$user="$name@yourdomain.com"; 应改为: $user=$name."@yourdomain.com"; 3、假若问题1不存在,但由于Web用户能调用vpopmail的权限,极易造成系统漏洞。 |
| xmy 回复于:2003-05-25 12:31:06 |
| 谢谢楼上GG,关于第一点,偶还是看不太明白,偶在别的电脑上可以正常增加用户啊,第二点,偶回去改(虽然可以用),关于第三点,改怎么做才安全? |
| 大麻 回复于:2003-05-25 12:58:55 |
| 问题不大,可以这样做。但是如果你是用的 mysql 做数据库,除了调用 vadduser 增加用户外,建议再用 mysql 查询一下该用户的建立成功与否则更好。 |
| xmy 回复于:2003-05-25 15:52:47 |
| 谢谢大麻GG,偶慢慢看php知识,增加一个用 mysql 查询一下该用户的建立成功与否。 |
| hamas 回复于:2003-05-27 15:42:39 |
| 把你的阿帕奇的默认启动用户改成vpopmail就可以了。
另外给你一个终极解决方案,使用php的vpopmail_add_user函数 vpopmail_add_user ( string 用户名, string 域名, string 口令 [, string 磁盘配额 [, bool apop]]) php中专门有一套vpopmail函数库 至于添加邮件域的问题,就比较麻烦,因为qmail对权限的要求相当严格! |
| xmy 回复于:2003-05-27 16:01:45 |
| 谢谢楼上的GG,偶看PHP 4完全中文手册写Dphp程序,在上面没有看到有vpopmail函数,所以不知道,谢谢GG提醒 |
| haohaoo 回复于:2003-05-27 18:29:20 |
| [quote:92cd10dde9="xmy"]谢谢楼上的GG,偶看PHP 4完全中文手册写Dphp程序,在上面没有看到有vpopmail函数,所以不知道,谢谢GG提醒[/quote:92cd10dde9]
要安装vpopmail,才有这个函数 |
| MAXidea 回复于:2003-05-27 19:01:51 |
| [quote:cb22e78abb="hamas"]pop]])
php中专门有一套vpopmail函数库 至于添加邮件域的问题,就比较麻烦,因为qmail对权限的要求相当严格![/quote:cb22e78abb] 赞同! |
| fishwork 回复于:2003-05-27 19:19:03 |
| 也就是说装了vpopmail就能使用这些函数吗? |
| yelagon 回复于:2003-05-28 11:34:06 |
| [quote:bd18f340b7="xmy"]
修改submit.php的yourdomain.com为你的域名,修改vadduser路径。这2个文件放在同一个目录[/quote:bd18f340b7] 建议用下面的方法简单有效: use vpopmail; insert into vpopmail ( pw_name, pw_domain ) values ( 'yelagon', 'test.com' ); 数据库中插入用户后,当用户pop验证或有email发至该帐号时vpopmail 会自动创建该帐号。 |
| xmy 回复于:2003-05-28 14:40:15 |
| thx 偶改程序试试 |
| hErO_mortal 回复于:2003-05-28 17:59:48 |
| 用sudo,不过安全性嘛。。。
php不适合来写mailserver前端 |
| hjp0021 回复于:2003-05-29 14:30:41 |
| password在mysql中是用:password函数加密的啊,可以直接插入吗? |
| xmy 回复于:2003-05-29 16:13:38 |
| 好像不是加密,可以 |
| yuantong 回复于:2003-05-30 08:25:29 |
| 请问xmy老大,如何修改igenus的login.php
把你的singup.php显示在首页呢?可以让用户自行申请邮箱. 小弟是对PHP没有学过,请老大详细指点一下. |
| blueriver 回复于:2003-05-30 09:34:00 |
| login.php里面不是有个<html> ...</html>段吗
恰当的地方加上个<a href="../../comm/read_out.htm?url=http://域名/signup.php" >注册</a> 当然连接取决于你的singup.php的位置 |
| xmy 回复于:2003-05-30 09:49:28 |
| 偶的php login,记得修改。
http://202.103.179.27/xmy/login3.php |
| yuantong 回复于:2003-05-30 10:09:10 |
| 老大,在页面出现很多错误啊
你可不可以告诉我修改login.php那里可以加入申请邮箱这个php |
| yuantong 回复于:2003-05-30 10:14:19 |
| 老大,在页面出现很多错误啊
你可不可以告诉我修改login.php那里可以加入申请邮箱这个php |
| xmy 回复于:2003-05-30 14:37:21 |
| 没注意,出了不少错误,更新了,重下一次吧,对比一下就知道哪里要改了。 |
| yf666 回复于:2003-11-29 09:10:37 |
| 我小弟想问一下,我们有自己的虚拟主机,一直想做个邮件箱申 请,不知这个vpopmail可不可以呀, |