Modifier un fichier .htaccess
Bonjour.
j'ai créer une page en php d'administration qui changera le mot de passe du fichier .htacess de mon serveur apache.
mon fichier est tres simple il se compose d'une ligne :
user:lemotdepasse
l'utilisateur entre le mot de passe par l'intermédiaire d'un input type password.
que je recuperer avec la variable $pass1.
apres plusieurs recherche je suis arrivé a ce code ( je sais pas si c'est l plus simple mais c'est ou je suis arrivé a quelque chose de +- correct )
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| // on modifie le fichier htaccess.
$monfichier=fopen("../.htpasswd","r"); // ouverture du fichier
while (!feof ($monfichier)) // tant que pas en fin de fichier
{
$lecture = fgets($monfichier, 4096); // stockage dans $lecture
$donnee=explode(":",$lecture); // parsing des données basé sur "*")
$combien=count($donnee)-1; // nbre d'éléments séparés par "*"
echo "<b>Ce fichier contient ",$combien," données : </b><br><br>";
for ($i=0;$i<$combien;$i++)
{
// modification des données
// on modifie ":" en "2°"
if (ereg(":",$donnee[$i])){$donnee[$i]=str_replace(":",$pass1,$donnee[$i]);}
// stockage temporaire des données toujours avec le séparateur
$liste_modif.=$donnee[$i].":";
}
}
fclose($monfichier); // fermeture
$monfichier=fopen("../.htpasswd","w+");
fwrite($monfichier,$liste_modif);
fclose($monfichier); |
mais bien sur si je suis ici c'est pas pour rien : j'ai une erreur :D
Voici l'erreur php :
Citation:
Ce fichier contient 1 données :
Notice: Undefined variable: liste_modif in C:\Program Files\EasyPHP 2.0b1\www\SellMate\Config\change.php on line 111
Your password have been changed
et mon fichier .htaccess est devenu : ma ligne 111 :
Code:
$liste_modif.=$donnee[$i].":";
merci de votre aide.