Stando a quanto dice la documentazione di fgets,quindi quando recuperi il nome dell'utente con $user=fgets($fp,20); in realtà $user contiene sia il nome dell'utente, sia due caratteri aggiuntivi: il ritorno a capo e la nuova linea (\r\n). Al momento del confronto quindi fai "pippo\r\n" == "pippo", che è ovviamente falso.La lettura termina quando sono stati letti length - 1 byte, oppure si incontra il carattere di newline (che viene incluso nel valore restituito)
P.s: Quale spazio e qualche accapo qui e la rendono il codice più leggibile.

Rispondi quotando