Accueil > Forum > > > > modifier chaine fichier texte
modifier chaine fichier texte
mercredi 3 novembre 2010 à 14:08:06 |
modifier chaine fichier texte

sly456328971
|
Bonjour,
je cherche à remplacer une chaine dans une fichier texte sans succes :
Code PHP :
if (isset($_GET['ajout'])) // Si on demande de supprimer une ligne
{
$tab = file("affichage.txt");
$num_ligne =1;
for ($i = 0; $i<count($tab);$i++)
{
$position=explode('|',$tab[$num_ligne-1]);
$position[2]='faux';
$num_ligne++;
}
header('Location: index.php'); // on recharge cette page pour la réactualiser
}
Merci de m'aider
|
|
mercredi 3 novembre 2010 à 14:32:59 |
Re : modifier chaine fichier texte

cod57
|
salut
Code PHP :
<?php
$a_virer="ma ligne à enlever";
$fichier="affichage.txt"; // tu adaptes
//ouverture en lecture et modification
$text=fopen($fichier,'r') or die("Fichier manquant");
$contenu=file_get_contents($fichier);
$contenuMod=str_replace($a_virer,'',$contenu);
fclose($text);
//ouverture en écriture
$text2=fopen($fichier,'w+') or die("Fichier manquant");
fwrite($text2,$contenuMod);
fclose($text2);
?>
|
|
mercredi 3 novembre 2010 à 14:39:32 |
Re : modifier chaine fichier texte

sly456328971
|
Salut cod57 et merci !!
Mon probleme est que mon fichier texte contient :
Truc1|Machin1|faux
Truc2|Machin2|faux
Truc3|Machin3|vrai
J'aimerais ne pas modifier ni supprimer la ligne entiere mais uniquement modifier le troisieme parametre !!
|
|
mercredi 3 novembre 2010 à 14:46:15 |
Re : modifier chaine fichier texte

cod57
|
C'est pas plus compliqué dans
$a_virer = "Truc1|Machin1|faux";
$new = "Truc1|Machin1|juste";
// tu comprendras
$contenuMod=str_replace($a_virer,'',$contenu);
devient
($a_virer, $new, $contenu)
si tu as beaucoup de lignes écrit une fonction avec un while ...
|
|
mercredi 3 novembre 2010 à 14:56:13 |
Re : modifier chaine fichier texte

sly456328971
|
Mon souci est que je ne peut pas écrire Code PHP : $a_virer = "Truc1|Machin1|faux"; car je ne connai pas le contenu du fichier celui ci étant alimenté dynamiquement.
Je ne sais pas si tu as fais attention à ma premiere fonction mais c'est lorsqu'un utilisateur clique sur un lien correspondant à une ligne dont je récupére l'id, je modifie cette ligne. Je ne connais donc pas à l'instant t le contenu de la ligne qui devra etre modifié.
Ce n'est pas possible de remplacer le deuxieme parametre avec un explode ?
Merci encore !!
|
|
mercredi 3 novembre 2010 à 15:11:42 |
Re : modifier chaine fichier texte

cod57
|
$_GET['ajout'] c'est la ligne ? une condition ...
$_GET['ajout'] c'est ce que moi j'appelle $a_virer ?
|
|
mercredi 3 novembre 2010 à 15:17:28 |
Re : modifier chaine fichier texte

cod57
|
http://bytes.com/topic/php/answers/1864-replace-string-file
http://www.webdeveloper.com/forum/archive/index.php/t-46601.html
deux discussions qui peuvent peu être d'aider
|
|
mercredi 3 novembre 2010 à 15:32:18 |
Re : modifier chaine fichier texte

sly456328971
|
Non, $_GET['ajout'] fait référence à cela dans ma page php :
Code PHP : print "<td><a href=\"".$_SERVER['PHP_SELF']."?ajout=".$j."\"><img src='/essai/images/rouge.jpg' width=30 height=30 border='no'></a></td>";
S'il clique sur l'image on récupére l'id et je veux aller modifier le troisieme parametre du fichier de la ligne correspondante à l'id.
|
|
mercredi 3 novembre 2010 à 15:52:41 |
Re : modifier chaine fichier texte

cod57
|
oui
if(isset($_GET['ajout']) && !empty($_GET['ajout')){
$id=$_GET['ajout']);
// $rows ligne de la table ou il y a le $id
// la tu recupéres la ligne à partir de $id
// select * from table where id=$id ... mysqle_query() ... tati tata
// tu construis ta ligne
$a_virer = $rows['truc'].'|'.$rows['truc'].'|faux';
$new = $rows['truc'].'|'.$rows['truc'].'|vrai';
$text=fopen($fichier,'r') or die("Fichier manquant");
$contenu=file_get_contents($fichier);
$contenuMod=str_replace($a_virer,'',$contenu);
fclose($text);
//ouverture en écriture
$text2=fopen($fichier,'w+') or die("Fichier manquant");
fwrite($text2,$contenuMod);
fclose($text2);
}
|
|
mercredi 3 novembre 2010 à 16:05:56 |
Re : modifier chaine fichier texte

sly456328971
|
J'ai réussi a faire une partie de ce que je voulais avec ceci :
Code PHP : if (isset($_GET['ajout'])) // Si on demande de supprimer une ligne
{
$content = file('affichage.txt');
$num = 0;
$data = explode('|',$content[$num]);
$data[2] = "vrai\r\n";
$content[$num] = implode('|', $data);
file_put_contents('affichage.txt', $content);
}
Cela ne marche que lorsque le num de la ligne est à 0. J'aimerais l'adapter avec ton exemple précédent pour qu'il exécute ceci pour la ligne X correspondant à l'id récupéré dans l'url.
|
|
Cette discussion est classée dans : fichier, ligne, texte, chaine, tab
Répondre à ce message
Sujets en rapport avec ce message
passage à la ligne [ par cas ]
Je possède un formulaire, dans lequel j'ai plusieurs champs texte "textearea". Quand j'appuie sur valider, je renseigne un fichier texte avec le conte
Question de neebies!!!!!!! [ par defkrie ]
Bonjour,jai une variable $chars qui contient le mot "aze" et un fichier texte "charts.txt". Dans ce fichier texte, à chaque ligne jai un mot du meme n
fichier ??? [ par rich25200 ]
Bonjour !!!j'ai un fichier....J'arrive a le lire mais je veux que lorsque dans mon fichier texte il y a un saut de ligne il me l'affiche dan un tablea
extraire une ligne d'un fichier texte [ par matthieugregoire ]
Bonjour à tous!!Je suis tout à fait novice dans l'usage de php et c'est pourquoi j'ai besoin que l'on me donne un petit coup de pouce. Je vous expose
Un fichier texte pour plusieurs compteurs [ par bluejim ]
blue_jim Ma question est la suivante :Est-il possible en Php de lire une ligne prédéfinie d'un fichier texte.J'explique :En partant du fait que la val
modifier une ligne dans un fichier texte S.O.S [ par MeTh ]
Bonjour,j'ai besoin de modifier une ligne dans un fichier texte plus précisément .htx format spécifique pour un programme qui est en fait une page .ht
Saut de ligne ou préciser une ligne dans un fichier texte, [ par milkyoue ]
Bonjour, Je voudrais savoir comment inscrire une ligne de caratère dans un fichier *.txt par exemple à la neuvième lignes, car il m'inscrit tout sur
remplacer une chaine de caractère dans un fichier [ par Capitaine Iron ]
j'ai un fichier texte qui est structuré de la facon suivante :le messageplein de commmentaires ici.....le messageplein de commmentaires ici.....le mes
supprimer une ligne dans un ficheir texte !!!! [ par funghi ]
salut à tous !!Pour alimenter un panier, php recupere les données (séparées par des tabultaions) dans un fichier texte .Jusque la tout va bien !mainte
Modifier un fichier toute les 24 heures [ par KiWin ]
Bonjour,J'aimerais savoir quel code utiliser pour modifier un fichier toutes les 24 heures. Ce fichier doit être modifié de sorte à ajouter à la lign
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|