Saut à la ligne fputs

Résolu/Fermé
xenotrof Messages postés 82 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 29 mars 2016 - 22 mai 2014 à 18:49
xenotrof Messages postés 82 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 29 mars 2016 - 25 mai 2014 à 18:38
Salut tous le monde ,

voila j'ai un problème je n'arrive pas à faire un saut à la ligne dans mon fichier texte..
j'aimerait que mon fichier txt se présente comme ceci
user1;
user2;
user3;
ect...

$username = fopen('logname.txt', 'r+');
if ($_POST['pseudo']) {
fputs($username, ".\r\n.");
fputs($username, $_POST['pseudo']);
include 'jeu.php';
}
?>


merci de votre aide

1 réponse

-helper- Messages postés 89 Date d'inscription mercredi 21 mai 2014 Statut Membre Dernière intervention 15 juin 2014 27
Modifié par -helper- le 22/05/2014 à 20:34
Salut !

Problème logique
Es-tu sur de l'option "r+"; or dans le manuel de PHP on lit :
'r+' Ouvre en lecture et écriture, et place le pointeur de fichier au début du fichier.
Pour faire ce que tu veux faire, il faudrait, je pense plus se placer à la fin du fichier après l'avoir ouvert en écriture !... C'est à dire l'option "a+" (append / ajout), pour ne pas écraser les pseudos déjà enregistrés.
Cf : https://www.php.net/manual/fr/function.fopen.php

Problème de sécurité
Attention si je poste un pseudo égale à "hacker\r\nhacker", l'intégrité de ton fichier ne sera plus respectée - puisque tu auras 2 lignes alors qu'il s'agit d'un meme pseudo !... Il faudra donc remplacer les caractères utilisées comme séparateur dans le pseudo avant de les enregistrer pour corriger cette faille...
De manière générale, ne JAMAIS enregistrer directement des valeurs UTILISATEUR sans les CONTROLER avant (taille, format, caractères utilisés, etc..)...

Note technique
J'imagine que très vite tu souhaiteras enregistrer d'autres valeurs que de simple pseudos.... des scores, le profil des joueurs, un mail, un mot de passe, etc... Alors pour pas ré-inventer la roue... Je te conseille d'utiliser ce qu'on appelle une base de données (c'est fait pour ca) !

D'autres conseils sur https://www.net-expression.com/
Bon courage !

S@M
1
xenotrof Messages postés 82 Date d'inscription mercredi 17 décembre 2008 Statut Membre Dernière intervention 29 mars 2016 28
25 mai 2014 à 18:38
Oh merci c'est très sympa de votre part :) ! Oui je suis débutant niveau sécurité je suis zéro :s
0