For at ændre en brugers password automatisk med PHP , brug "forventer ", en Unix værktøj designet til at gøre det lettere at automatisere kommandolinje programmer som " passwd " værktøj bruges til at ændre adgangskoder. Heldigvis , PHP kommer med en indbygget interface til "forventer" kommando. Dette vil tillade dig at starte op på den " passwd " værktøj og skrive til dets indgang direkte ligesom hvis du var at skrive til en fil. . Instruktioner
1
Åbn din foretrukne teksteditor
2
Indsæt PHP tags: < ? Php
>
;
p Alle kode for resten af tutorial vil gå mellem disse to linjer
3
Indsæt følgende for at starte op på den " passwd " nytte og koble sin interface. til en fil håndtag : Hej
$ passwd_handle = expect_popen ( " passwd ")
4
Indsæt følgende for at give " passwd " lidt tid at starte : Hej < p> sleep (1)
5
Indsæt følgende for at skrive til passwd program : Hej
fwrite ( $ passwd_handle , " oldpass \\ n ");
siden passwd program , hvis det køres manuelt , spørger først for det gamle password for den aktuelle bruger, skal den gamle adgangskode være den første ting skrevet til $ passwd_handle af dit script . Naturligvis skulle " oldpass " ændres for at afspejle den sande gamle adgangskode . Det skal efterfølges af "\\ n " kommando, som repræsenterer "Enter" tasten
6
Indsæt følgende for at skrive den nye adgangskode : .
Fwrite ( $ passwd_handle , " newpass \\ n ");
fwrite ($ passwd_handle , " newpass \\ n ");
scriptet skriver data til prompter givet af " passwd " præcis som bruger ville, hvis køre programmet manuelt. Da passwd beder om den samme adgangskode , der skal gives to gange, skal du have PHP script skrive den nye adgangskode to gange for at programmet
7
Luk forbindelsen til passwd kommandoen : .
< P > fclose ( $ passwd_handle )