Hal ini dapat dicapai dengan dua cara.
1. Tambahkan pengguna ke Web
. Karena menambahkan pengguna, pengguna yang Anda jalankan program PHP harus memiliki hak administrator (Administrator), dan pada saat yang sama, mode aman di php.ini Anda tidak boleh diaktifkan, dan mode aman di php.ini Anda tidak boleh diaktifkan. system() tidak boleh ditutup pada fungsi shutdown ), exec(), passthru() dan fungsi lainnya.
(Petunjuk berikut ini untuk Windows2000/Windows XP/Windows 2003)
1. Gunakan IIS sebagai server Web. Jika Anda menggunakan IIS sebagai server, maka akun yang menjalankan PHP adalah: IUSR_XXXXXXXX, IWAM_XXXXXXX, (XXXX mewakili nama komputer dari server), maka Anda harus Tambahkan dua pengguna ini ke grup Administrator: Administrator. Tentunya jika hal ini dilakukan akan menimbulkan ancaman terhadap keamanan server.
1. Gunakan Apache sebagai server Web. Sejauh yang saya tahu, setelah Apache diinstal sebagai layanan, ia berjalan dengan izin sistem. Artinya, ketika PHP dijalankan, ia langsung memiliki izin sistem, yang melebihi izin administrator, jadi tidak mungkin lagi menjalankan perintah berikutnya. Jika Anda mengubah pengguna Apache yang sedang berjalan, maka Anda harus menentukan bahwa pengguna layanan Apache yang sedang berjalan memiliki izin administrator atau lebih tinggi, seperti izin Administrator atau sistem.
Kemudian Anda dapat melakukan operasi penambahan pengguna pada kode PHP Anda:
Sesuai dengan kebutuhan poster, jelaskan kode berikut:
<?php
mendefinisikan("USER_GROUP", "pengguna"); //Grup pengguna, defaultnya adalah pengguna, untuk alasan keamanan, tentukan grup pengguna
mendefinisikan("AKTIF", "YA"); //Apakah akan mengaktifkan pengguna langsung setelah pembuatan, YA berarti aktivasi, TIDAK berarti penonaktifan
//Ekstrak nama pengguna dan kata sandi dari database
//Asumsikan tabelnya adalah user_info dan hanya memiliki field id, user, passwod
$sql = "PILIH pengguna, kata sandi DARI info_pengguna";
$hasil = mysql_query($sql) or die("Database kueri gagal");
//Perulangan untuk menyisipkan pengguna
sementara ($array = mysql_fetch_array($hasil)) {
jika (!fungsi_ada("sistem"))
die('Fungsi sistem() tidak ada, penambahan pengguna gagal.');
//Tambahkan pengguna
@system("pengguna bersih $array[pengguna] $array[passwd] /aktif:AKTIF /tambahkan");
//Tambahkan ke grup tertentu
@system("pengguna grup lokal bersih $array[pengguna] /del");
@system("grup lokal bersih USER_GROUP $array[pengguna] /tambahkan");
}
?>
Kode di atas menambahkan pengguna dari semua database Anda ke sistem lokal. Jika Anda ingin menambahkannya satu per satu, Anda dapat mempertimbangkan untuk mengubahnya untuk menambahkan pengguna setelah pendaftaran pengguna berhasil.
2. Gunakan PHP sebagai skrip shell untuk menambahkan pengguna.
Selain itu, saya sebenarnya punya ide lain. Itu dapat dijalankan menggunakan php.exe di sisi server tanpa masalah keamanan apa pun. Saya baru saja mengikuti tes dan lulus.
Dengan asumsi php Anda terinstal di c:php, maka kita menggunakan command prompt untuk mengeksekusi skrip php untuk menambahkan pengguna.
Kode PHP:
//c:test.php
<?php
@system("pengguna bersih tes heiyeluren /tambahkan");
?>
Simpan di file c:test.php dan jalankan di bawah cmd:
c:phpphp.exe c:test.php
petunjuk:
C:>c:phpphp.exe c:test.php
Perintah berhasil diselesaikan.
Jadi dari sudut pandang ini, kode yang saya tulis di atas dapat dibawa ke sini untuk dieksekusi, dan kemudian php.exe bertindak sebagai mesin skrip shell. Kemudian tulis sebagai proses batch dan jalankan melalui tugas yang dijadwalkan. Tentu saja, Anda juga dapat mempertimbangkan untuk menggunakan bahasa lain untuk mengimplementasikannya, seperti vb/vc. Cari database secara teratur untuk melihat apakah ada pengguna baru, lalu tambahkan pengguna tersebut ke sistem.