Ya, lama tak bersua. Rindu rasanya tak bermesra... :D. Sebelumnya penulis minta maaf terlebih dahulu atas keterlambatan ketersediaan artikel-artikel baru dari para staff ilmuwebsite. Sebagian besar dikarenakan kesibukan masing-masing staff, yang membutuhkan perhatian khusus. Mohon dimaklumi. Para staff juga manusia, punya rasa punya hati... :D
Script lengkapnya sebagai berikut :
// password.gen.php
<?php
function make_password($num_chars) {
if ((is_numeric($num_chars)) && ($num_chars >= 6) && (! is_null($num_chars))) {
$password = "";
$accepted_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYZ1234567890~!@#$%^&*+|}{:>?<";
srand(((int)((double)microtime()*1000003)) );
for ($i=1; $i<=$num_chars; $i++) {
$random_number = rand(0, (strlen($accepted_chars) -1));
$password .= $accepted_chars[$random_number] ;
}
return $password;
}
else
{
echo "Password harus lebih dari 6";
}
}
?>
<html><head><title>Password Generator</title></head>
<body>
Password anda : <br><font style='BACKGROUND-COLOR:yellow'><b>
<?php echo make_password($_POST['size']); ?>
</b></font><br>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="text" name="size" value="<?php echo $_POST['size']; ?>" >
<input type="submit" name="submit" value="Buat!!">
</form>
</body>
</html>
Penulis coba jelaskan bagian yang intinya saja ...
if ((is_numeric($num_chars)) && ($num_chars >= 6) && (! is_null($num_chars))) {
Jika inputan yang di masukkan oleh user adalah angka/bilangan numeric, dan jumlahnya karakter lebih dari 6 digit maka ...
$password = "";
$accepted_chars = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV WYZ1234567890~!@#$%^&*+|}{:>?<";
Siapkan karakter, angka, dan spesial karakter yang nantinya akan dijadikan password.
srand(((int)((double)microtime()*1000003)) );
Kemudian Lakukan randomisasi kemungkinan karakter, angka, ataupun spesial karakter yang nantinya di ambil menjadi bagian dari password.
for ($i=1; $i<=$num_chars; $i++)
{
Lakukan pengulangan sebanyak inputan yang dimasukkan ...
$random_number = rand(0, (strlen($accepted_chars) -1));
Buat randomisasi pemilihan karakter, angka, spesial karakter, dari kumpulan karakter yang telah dipersiapkan sebelumnya...
$password .= $accepted_chars[$random_number] ;
Masukkan satu persatu karakter yang diambil kedalam variable $password
}
No comments:
Post a Comment