Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/06/2008, 17h59   #1
Membre actif
 
Inscription : mars 2007
Messages : 368
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 368
Points : 153
Points : 153
Par défaut Supprimer une ligne d'un fichier

Bonjour,

Je voudrais supprimer une ligne d'un fichier texte. J'affiche le contenu du fichier dans un tableau et à chaque fin de ligne, j'ai un icône "supprimer".

Voici mon code :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
fopen($fichier, 'r');
$tableau_fich = file($fichier);
for($i = 0 ; $i < count($tabeau_fich) ; $i++)
{
	echo"<table>
		<tr>
			<td>".$tableau_fich[$i]);."</td>
			<td><input type='image' src='images/supprimer.png' value='".$i."'></td>
		</tr>
	</table>";
};
Je ne vois pas comment faire pour supprimer la ligne dans le fichier en cliquant sur l'icône de cette ligne.

Merci pour l'aide.
Deciprog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2008, 19h55   #2
Membre émérite
 
Inscription : septembre 2007
Messages : 951
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 951
Points : 948
Points : 948
Ben en faite comme tu connais le numéro de la ligne le mieux c'est de reparcourir ton fichier et de copier chaque ligne dans un nouveau fichier sauf la ligne à supprimer. Tu ne peux pas le faire directement dans le fichier genre supprimer ligne 10.
batataw est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2008, 22h37   #3
Membre actif
 
Inscription : mars 2007
Messages : 368
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 368
Points : 153
Points : 153
Merci "Batataw", tu as réussi à résoudre mon problème voici le code que j'ai ajouté ensuite il ne reste plus qu'à supprimer l'ancien fichier et renommer le temporaire.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
if (isset($_POST['suppr']))
{			
	$inF = fopen($fichier_temp,"a"); //Ouvrir le fichier en mode lecture et écriture
	$tabTemp ="";
	$tabfich = file($fichier);
 
	for($j = 0 ; $j < count($tabfich) ; $j++)
	{
		if ($j == $_POST['suppr']) //On ne prend pas en compte cette ligne
		{
		}else{
			fwrite($inF,$tabfich[$j]);
		};
	};
};
fwrite($inF,$tabTemp); //Ecrire : pour passer à la ligne, écrire \n  -> ($inF,$texte."\n");
fclose($inF); //Fermer le fichier
Deciprog est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h14.


 
 
 
 
Partenaires

Hébergement Web