Supprimer une ligne d'un fichier txt

Résolu
trente30 Messages postés 3 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 14 janvier 2009 - 13 janv. 2009 à 22:07
trente30 Messages postés 3 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 14 janvier 2009 - 14 janv. 2009 à 08:34
Bonjour,
je fais une boucle , j'affiche en PHP les lignes d' un fichier texte, et j'aimerais creer un bouton qui supprimerais la ligne affichée dans le fichier texte.
Je ne vois pas comment faire, au moment de l'affichage il faut attribuer quelque chose pour qu'il reconnaisse l'endroit de la ligne?
j'affiche,j'ajoute des ligne mais ca... je sais pas faire :)
merci de votre aide

4 réponses

trente30 Messages postés 3 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 14 janvier 2009
14 janv. 2009 à 08:34
oui,
je cherchais depuis ce matin a attribuer une variable pour chaque ligne lu,
j'ai ma reponse
merci :)
3
kohntark Messages postés 3706 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
13 janv. 2009 à 22:15
Salut,

qui supprimerais la ligne affichée dans le fichier texte

Quelle ligne ?? Une ligne sélectionnée par l'utilisateur ? des boutons à toutes les lignes ? supprimer la ligne du fichier texte ou de l'affichage ?

=> un id sur un span ou un div propre à la ligne. Ensuite le bouton envoie l'id et le script php la supprime dans le fichier texte, ou un simple visibility ou display pour ce qui est de l'affichage.
Pour faire plus propre il y a ajax.

Cordialement,

Kohntark -
0
trente30 Messages postés 3 Date d'inscription mardi 13 janvier 2009 Statut Membre Dernière intervention 14 janvier 2009
14 janv. 2009 à 07:14
en fait j'ai un site ftp, j'ai un onglet, liens, quand je clique dessus, cela affiche les liens que je veux, chaque lien correspond a une ligne d'un fichier texte (pas besoin d'une base de donnée pour ci peux).J'ai donc fait une boucle:

            <?php
            // 1 : on ouvre le fichier
            $monfichier = fopen("../datas/links/boitesmails.txt", "r+");
                while (!feof($monfichier))
                {    
                    ?>
                   

                    <?php
                    // 2 : on lit la première ligne du fichier
                    $ligne = fgets($monfichier);
                    $lignehttp = fgets($monfichier);
                    ?>
                    <li>[<?php echo "><?php echo "$ligne";?>]</li>
                   

                   

                    <?php
                                     }

            fclose($monfichier);
           
            ?>
Oui mais voila, j'aimerais maintenant integrer une petite icone ou un bouton (qu'importe) dans la boucle pour supprimer la ligne dans le fichier texte.
Comment va t'il savoir a quelle ligne cela correspond?

Merci :)
0
kohntark Messages postés 3706 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
14 janv. 2009 à 08:03
Salut,

Tu peux faire qq chose du genre :
$i = 1;

while (!feof($monfichier)) {
  $ligne = fgets($monfichier);
  $lignehttp = fgets($monfichier);
 
  echo '
 

  <li>
  ['.$lignehttp.' '.$ligne.']
  &nbsp;[delete.php?del='.$i.' supprimer]
  </li>
 

 
';
  $i+=2;
}

Puis dans delete.php tu récupères la var $_GET['del'] et tu supprimes la ligne correspondante (et celle qui suit si j'ai bien compris)

Tu pourrai également utiliser file() et travailler sur les clés du tableau

Cordialement,

Kohntark -
0