<?php
$username = 'username';
$password = 'password';
$htpasswd = exec('htpasswd -nb '.$username.' '.$password);
$enc_pass = last(explode(':', $htpasswd));
echo $enc_pass;
?>
Let wel: username en password mogen geen spaties beslaan!
Maar waarom wil je dit in godsnaam doen?
Link gekopieerd
Jason: dat werkt natuurlijk alleen als htpasswd in je PATH hebt staan. Bovendien kan het net zo makkelijk in php:
<?
$user = "kees"
$password = "sosecretonlybassieknows";
$htpasswd_text = "$user:".crypt($password,CRYPT_STD_DES)."";
$filename = 'test.txt';
$somecontent = "Add this to the file\n";
$filename ="/path/to/.htaccess";
if (is_writable($filename)) {
if (!$handle = fopen($filename, 'a')) {
echo "Cannot open file ($filename)";
exit;
}
if (fwrite($handle, $somecontent) === FALSE) {
echo "Cannot write to file ($filename)";
exit;
}
fclose($handle);
} else {
echo "The file $filename is not writable";
}
?>
Link gekopieerd
@Arend:
Als ie alleen het password wilt uitlezen is dit een mooie manier..
Als ie een htpasswd wilt genereren, moet 'ie jouwes nemen! :)
[edit]
Zow joh dâ Neerlands is ok nie al tuh best mèhr
[/edit]
Link gekopieerd
Json: touche
Dit is de versie van jouw script dat zonder externe programma's werkt ;)
<?
$user = "kees"
$password = "sosecretonlybassieknows";
$htpasswd_text = "$user:".crypt($password,CRYPT_STD_DES)."";
echo $htpasswd_text
?>
Link gekopieerd
Bedankt voor de reacties, maar de crypt() functie geeft niet het gewenste resultaat. Namelijk:
<?php
crypt('admin', CRYPT_STD_DES) = '1$jZpN/buYGDo'
?>
Terwijl de gecodereerde 'admin' dit zou moeten zijn: bc38wMgPlFZ0g
Link gekopieerd
Ik zie dat ze beide werken... Bedankt! Ik gebruik het trouwens voor een inlogsysteem die voor de verandering niet met php werkt, maar met behulp van .htaccess en .htpasswd. Ik weet eigenlijk niet of dit slim is....
Link gekopieerd