Intenté y busqué una solución, pero no encuentro ninguna definitiva.PHP Modificar una sola línea en un archivo de texto
Básicamente, tengo un archivo txt que enumera nombres de usuario y contraseñas. Quiero poder cambiar la contraseña de un determinado usuario.
Contenido archivo de users.txt:
user1,pass1
user2,pass2
user3,pass3
He intentado el siguiente código PHP:
// $username = look for this user (no help required)
// $userpwd = new password to be set
$myFile = "./users.txt";
$fh = fopen($myFile,'r+');
while(!feof($fh)) {
$users = explode(',',fgets($fh));
if ($users[0] == $username) {
$users[1]=$userpwd;
fwrite($fh,"$users[0],$users[1]");
}
}
fclose($fh);
El problema con su solución es que está manejando un archivo de texto (secuencial) como un archivo binario. El fwrite que está utilizando no funcionará aquí. –
su problema es un ejemplo de por qué no debe usar un archivo de texto plano sino una base de datos –
Además, existe el problema de la sincronización. Por lo tanto, debería intentar usar ['flock'] (http://php.net/manual/en/function.flock.php). O bien, podría enloquecer a algunos usuarios. – Prasanth