Un fichier qui ne stock pas les info correctement

Résolu/Fermé
DevGl Messages postés 136 Date d'inscription samedi 23 novembre 2013 Statut Membre Dernière intervention 16 mai 2015 - 28 mars 2015 à 14:56
DevGl Messages postés 136 Date d'inscription samedi 23 novembre 2013 Statut Membre Dernière intervention 16 mai 2015 - 28 mars 2015 à 15:14
Bonjour , je suis entrain de faire un petit simple exercice en php concernant l'identification , j'ai un probléme dans le script inscription.php , et comme base de donnée si on peut dire , j'ai un fichier qui s'appel "comptes.txt" , sur chaque ligne il y'a le login espace le mod pass de chaque utilisateur ,
le probléme ce que , se script marche bien , mais a chaque fois un utilisateur fait inscription , ces info s'enregistre correctement dans le fichier , mais ils effacent les info qui était avaant !! voila le script inscription.php

<?php
$resultat=0;
if(!empty($_POST['password']) && !empty($_POST['pas2']) && !empty($_POST['password'])){

if(is_file("comptes.txt"))
{

$tab = file("comptes.txt");
$size = sizeof($tab);
$trouve=0;
for($i = 0;$i<$size;$i++)
{
$str = explode(" ",$tab[$i]);
$str[0] = trim($str[0]);

if($str[0]==$_POST['username'])
{
$resultat=1;
}
}

if($resultat==1){ echo 'veuillez utiliser un autre login';}
else if($resultat!=1){
if($_POST['password']==$_POST['pas2']){
$fd=fopen("comptes.txt","w+");
$txt = "\n".$_POST['username']." ".$_POST['password'];
fputs($fd,$txt);
session_start();
$_SESSION['username'] = $_POST['username'];
header("Location: membres.php");
}
else header("Location: inscription.html");
}

}
}

?>

Ici password c'est le mot de passe , pas2 , c le mot de passe qu'on répete dans le formulaire , le probleme existe au niveau de " fputs($fd,$txt); "
par exemple si il ya déjà dans le fichier " devgl 123456" comme login et mot de passe , si je veux faire une autre inscription "dev1 123" il va m'affiché dans le fichier comptes.txt que dev1 123
il annule ce qui était avaant , vos solutions s'il vous plaaaait
A voir également:

1 réponse

NHenry Messages postés 15192 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 18 février 2025 353
28 mars 2015 à 15:12
Lis la documentation de fopen : https://www.php.net/manual/en/function.fopen.php
Il y a la liste des modes d'ouvertures de fichiers.
0
DevGl Messages postés 136 Date d'inscription samedi 23 novembre 2013 Statut Membre Dernière intervention 16 mai 2015
28 mars 2015 à 15:14
Meeerci , j'ai compris , je dois utiliser "a" aulieu de "w" ,Merci (y)!
0