Этого можно достичь двумя способами.
1. Добавьте пользователей в Интернет
. Для добавления пользователей пользователь, которым вы запускаете программу PHP, должен иметь права администратора (Администратора), и в то же время безопасный режим в вашем php.ini не должен быть включен, а system() не должна закрываться в функции завершения работы), exec(), passthru() и других функциях.
(Следующие инструкции предназначены для Windows 2000/Windows XP/Windows 2003)
1. Используйте IIS в качестве веб-сервера. Если вы используете IIS в качестве сервера, то учетная запись, на которой работает PHP: IUSR_XXXXXXXX, IWAM_XXXXXXX, (XXXX представляет имя компьютера. сервер), то необходимо добавить этих двух пользователей в группу «Администраторы»: «Администраторы». Конечно, если вы это сделаете, это создаст угрозу безопасности сервера.
1. Используйте Apache в качестве веб-сервера. Насколько я знаю, после установки Apache в качестве службы он запускается с системными разрешениями. Это означает, что при запуске PHP он напрямую имеет системные разрешения, которые превышают права администратора. больше невозможно выполнять команды Следующие слова. Если вы изменяете работающего пользователя Apache, вы должны указать, что работающий пользователь службы Apache имеет права администратора или более высокие права, например права администратора или системы.
Затем вы можете выполнить операцию добавления пользователя в свой PHP-код:
В соответствии с потребностями автора опишите следующий код:
<?php
define("USER_GROUP", "users"); //Группа пользователей, по умолчанию — пользователи, в целях безопасности определите группу пользователей
define("ACTIVE", "YES"); //Активировать ли пользователя сразу после создания, ДА означает активацию, НЕТ означает деактивацию
//Извлекаем имя пользователя и пароль из базы данных
//Предположим, что это таблица user_info и содержит только поля id, user, passwod
$sql = "ВЫБЕРИТЕ пользователя и пароль ИЗ информации_пользователя";
$result = mysql_query($sql) or die("Ошибка запроса к базе данных");
//Цикл для вставки пользователей
while ($array = mysql_fetch_array($result)) {
если (!function_exists("система"))
die('Функция system() не существует, добавить пользователя не удалось.');
//Добавить пользователя
@system("net user $array[user] $array[passwd] /active:ACTIVE /add");
//Добавить в указанную группу
@system("сетевые пользователи локальной группы $array[user] /del");
@system("net localgroup USER_GROUP $array[user] /add");
}
?>
Приведенный выше код добавляет пользователей всех ваших баз данных в локальную систему. Если вы хотите добавить их по отдельности, вы можете изменить его, чтобы добавлять пользователей после успешной регистрации пользователя.
2. Используйте PHP в качестве сценария оболочки для добавления пользователей.
Кроме того, у меня есть еще одна идея. Его можно выполнить с помощью php.exe на стороне сервера без каких-либо проблем с безопасностью. Я просто сдал тест и он пройден.
Предполагая, что ваш php установлен в c:php, мы используем командную строку для выполнения php-скрипта для добавления пользователей.
PHP-код:
//c:test.php
<?php
@system("сетевой пользователь heiyeluren test /add");
?>
Сохраните его в файле c:test.php и выполните под cmd:
c:phpphp.exe c:test.php
намекать:
C:>c:phpphp.exe c:test.php
Команда выполнена успешно.
Таким образом, с этой точки зрения код, который я написал выше, можно перенести сюда для выполнения, а затем php.exe будет действовать как механизм сценариев оболочки. Затем напишите его как пакетный процесс и выполните его с помощью запланированных задач. Конечно, вы также можете рассмотреть возможность использования других языков для его реализации, например vb/vc. Регулярно выполняйте поиск в базе данных, чтобы узнать, есть ли вновь добавленные пользователи, а затем добавляйте пользователей в систему.