Bah déjà, fait afficher $nb et peut etre que tu verras la valeur lu dans le fichier.
Ensuite, sans en etre sur et certain, je vois mal comment ton fputs peut fonctionner si les droits sur le fichier sont en r+ et pas en rw ...
mais comme je connais mal les fichiers en PHP, je ne peux pas etre certain que l'erreur vient de là.
Sinon, t'as pas pensé à la solution base de donnée ??