如何使用PHP往windows中添加用户


Posted in PHP onDecember 06, 2006

方法有一:  

因为添加用户,所以你运行PHP程序的用户必须是管理员权限(Administrator),并且同时需要你的php.ini中的安全模式没有打开,并且关闭函数中没有关闭system()、exec()、passthru()等函数。  

( 以下说明针对Windows2000/Windows XP/Windows 2003 )  
一、使用IIS做Web服务器  
如果是使用IIS做服务器的话,那么运行PHP的帐户就是:IUSR_XXXXXXXX,IWAM_XXXXXXX,(XXXX代表服务器的计算机名),那么你必须把这两个用户加到管理员组:Administrators 。当然,你这样做的话,会给服务器安全带来威胁。  

二、使用Apache作为Web服务器  
据了解,Apache安装成服务以后,那么就是以system权限运行的,那么就是说PHP运行的话,直接就是系统权限,已经超过了管理员权限,那么执行命令更不再话下。如果你修改了Apache的运行用户,那么你必须指定Apache服务运行用户是管理员以上权限,比如Administor或者system权限。  
然后你就可以在你的PHP代码中执行添加用户操作了:  
描述如下代码:  

<?php  
define("USER_GROUP", "users"); //用户组,默认为users,为了安全,定义还是的用户组  
define("ACTIVE", "YES"); //是否创建后直接激活用户,YES为激活,NO为不激活  

//从数据库提取用户名和密码  
//假设表为user_info,并且只有字段id, user, passwod  
$sql = "SELECT user,password FROM user_info";  
$result = mysql_query($sql) or die("Query database failed");  
//循环插入用户  
while ($array = mysql_fetch_array($result)) {  
if (!function_exists("system"))  
die('Function system() not exists, add user failed.');  
//添加用户  
@system("net user $array[user] $array[passwd] /active:ACTIVE /add");  
//添加到指定组  
@system("net localgroup users $array[user] /del");  
@system("net localgroup USER_GROUP $array[user] /add");  
}  
?> 

以上代码实现了把你所有数据库的用户添加到本地系统,如果你想单个的添加,可以考虑更改成用户注册成功后就添加用户,这个可以自己扩展。  

不过,此方法不能实现同步  

方法二:  
可以在服务器端利用php.exe来执行,并且不会有安全问题。  

假设你的php安装在c:\php\中,那么我们就使用命令提示符的来执行php脚本来添加用户。  

PHP代码:  
//c:\test.php  
<?php  
@system("net user test test /add");  
?>  
保存在c:\test.php文件中  
在cmd下执行:  
c:\php\php.exe c:\test.php  
提示:  
C:\>c:\php\php.exe c:\test.php  
命令成功完成。  

再将方法一中的那段代码拿到这里来执行,然后php.exe充当shell脚本引擎。然后写成批处理,通过定时任务来执行。当然,也可以考虑使用其他语言来实现,比如vb/vc之类的,定期去数据库中检索是否有新添加的用户,然后再把用户添加到系统中。

PHP 相关文章推荐
Thinkphp中Create方法深入探究
Jun 16 PHP
如何让CI框架支持service层
Oct 29 PHP
php创建、获取cookie及基础要点分析
Jan 26 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
新浪微博OAuth认证和储存的主要过程详解
Mar 27 PHP
php计算多维数组中所有值总和的方法
Jun 24 PHP
PHP中SSO Cookie登录分析和实现
Nov 06 PHP
PHP实现上传多图即时显示与即时删除的方法
May 09 PHP
php提取微信账单的有效信息
Oct 01 PHP
Yii框架实现对数据库的CURD操作示例
Sep 03 PHP
php-7.3.6 编译安装过程
Feb 11 PHP
PHP如何通过带尾指针的链表实现'队列'
Oct 22 PHP
php巧获服务器端信息
Dec 06 #PHP
Apache2 httpd.conf 中文版
Dec 06 #PHP
PHP 字符串操作入门教程
Dec 06 #PHP
让你的网站首页自动选择语言转跳
Dec 06 #PHP
PHP经典的给图片加水印程序
Dec 06 #PHP
echo, print, printf 和 sprintf 区别
Dec 06 #PHP
PHP数字格式化
Dec 06 #PHP
You might like
用PHP提取中英文词语以及数字的首字母的方法介绍
2013/04/23 PHP
PHP制作3D扇形统计图以及对图片进行缩放操作实例
2014/10/23 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
PHP设计模式之PHP迭代器模式讲解
2019/03/22 PHP
一个js的tab切换效果代码[代码分离]
2010/04/11 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件
2010/08/24 Javascript
让JavaScript拥有类似Lambda表达式编程能力的方法
2010/09/12 Javascript
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
理解JAVASCRIPT中hasOwnProperty()的作用
2013/06/05 Javascript
js用闭包遍历树状数组的方法
2014/03/19 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
2014/05/14 Javascript
使用JavaScript+canvas实现图片裁剪
2015/01/30 Javascript
Javascript 高阶函数使用介绍
2015/06/15 Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
2015/07/27 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
jQuery使用经验小技巧(推荐)
2016/05/31 Javascript
微信小程序中做用户登录与登录态维护的实现详解
2017/05/17 Javascript
Python实现的Google IP 可用性检测脚本
2015/04/23 Python
浅谈Python数据类型判断及列表脚本操作
2016/11/04 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
2017/11/11 Python
Python 绘图库 Matplotlib 入门教程
2018/04/19 Python
Python3读取Excel数据存入MySQL的方法
2018/05/04 Python
Python中的取模运算方法
2018/11/10 Python
python实现kmp算法的实例代码
2019/04/03 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
Python用5行代码实现批量抠图的示例代码
2020/04/14 Python
通过实例解析python subprocess模块原理及用法
2020/10/10 Python
检测用户浏览器是否支持CSS3的方法
2009/08/29 HTML / CSS
车间班组长岗位职责
2013/11/13 职场文书
求职信怎么写
2014/05/23 职场文书
刑事上诉状(无罪)
2015/05/23 职场文书
2020年元旦祝福语录,总有适合你的
2019/12/31 职场文书
使用Django实现商城验证码模块的方法
2021/06/01 Python
python简单验证码识别的实现过程
2021/06/20 Python