Pour modifier le mot de passe d'un utilisateur automatiquement avec PHP , utilisez " s'attendre à", un utilitaire Unix conçu pour le rendre plus facile à automatiser les programmes en ligne de commande comme l'utilitaire "passwd" utilisée pour modifier les mots de passe . Heureusement , PHP est livré avec une interface intégrée à la commande «s'attendre à» . Cela vous permettra de démarrer l'utilitaire "passwd" et écrivez à son entrée directement comme si vous écriviez dans un fichier. . Instructions
1
Ouvrez votre éditeur de texte favori
2
collez le code balises PHP : < ? Php
> Photos
;
Tout le code pour le reste du tutoriel va aller entre ces deux lignes
3
Collez le texte suivant pour démarrer l'utilitaire "passwd" et lier son interface. à un descripteur de fichier : Photos
$ passwd_handle = expect_popen ( "passwd" ) ;
4
Collez le texte suivant pour donner "passwd" un peu de temps à démarrer :
< p> sleep ( 1)
5
Collez le texte suivant d'écrire sur le programme passwd :
fwrite ($ passwd_handle , " oldpass \\ n") ;
depuis que le programme passwd, si exécuté manuellement , demande d'abord l' ancien mot de passe de l'utilisateur actuel , le vieux mot de passe doit être la première chose écrite à $ passwd_handle par votre script. Naturellement, " oldpass » devrait être modifiée afin de refléter la vraie ancien mot de passe . Il doit être suivi par la commande "\\ n" , qui représente la touche "Entrée"
6
Collez le texte suivant pour écrire le nouveau mot de passe : .
Fwrite ($ passwd_handle , " newpass \\ n") ;
fwrite ($ passwd_handle , " newpass \\ n") ;
le script est écrit des données sur les indications données par "passwd" exactement comme le ferait un utilisateur si exécuter le programme manuellement. Depuis passwd demande pour le même mot de passe pour être donné deux fois , vous devez avoir le script PHP écrire le nouveau mot de passe deux fois au programme
7
Fermer la connexion à la commande passwd : .
< P > fclose ( $ passwd_handle ) ;