Me faltó terminar el bucle (romperlo) al encontrar la coincidencia ..
El ejemplo completo sería:
archivo.txt
1***username1***pass1***nombre1***email1
2***username2***pass2***nombre2***email2
3***username3***pass3***nombre3***email3
4***username4***pass4***nombre4***email4
Código PHP:
<?
$dato=file("archivo.txt");
$num_lines_txt=count($dato);
// Buscar:
$username="username1";
$pass="pass1";
for ($i=0;$i<$num_lines_txt;$i++) {
$datos_usuario=explode("***",$dato[$i]);
if ($username == $datos_usuario[1] and $pass == $datos_usuario[2]){
$usuario = "registrado";
$nombre = $datos_usuario[3];
$email = $datos_usuario[4];
break;
} else {
$usuario = "noregistrado";
}
} //cierra el bucle
echo $usuario."<br>";
echo $nombre."<br>";
echo $email."<br>";
?>
Y usando un bucle foreach() .. Nos ahorramos el count() ...
Código PHP:
<?
$dato=file("archivo.txt");
// Buscar:
$username="username1";
$pass="pass1";
foreach ($dato as $registro){
$datos_usuario=explode("***",$registro);
if ($username == $datos_usuario[1] and $pass == $datos_usuario[2]){
$usuario = "registrado";
$nombre = $datos_usuario[3];
$email = $datos_usuario[4];
break;
} else {
$usuario = "noregistrado";
}
} //cierra el bucle
echo $usuario."<br>";
echo $nombre."<br>";
echo $email."<br>";
?>
Un saludo,