Remplacer ou supprimer une chaîne de caratères dans un fichi

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Remplacer ou supprimer une chaîne de caratères dans un fichi

Re: Remplacer ou supprimer une chaîne de caratères dans un f

par zamouranou » 03 mai 2012, 11:46

svp l'orsque je passe en parametre une chaine pour la remplacer par une chaine vide !! je trouve que tous le fichiers est vide!!!!!

par phpdog » 05 déc. 2005, 17:35

Je vuet traiter des fichiers laucaux en passant par EasyPHP sur mon ordinateur, le script ne peut pas agir sur un fichier or du seveur ?

par jobherzt » 05 déc. 2005, 17:32

tu veux traiter des fichiers locaux en passant par un serveur sur internet? ou est ce que le serveur est installe sur ta machine ? en tout cas quand je dis "distant" je veux dire "dans les repertoires du serveur", que celui soit sur ta machine ou non.

si les fichiers sont dans le repertoire de ton serveur, c'est ce que je disais plus haut, sinon il faut que tu upload le fichier, je penses que tu trouveras facilement un tuto pour ca..

par phpdog » 05 déc. 2005, 16:57

NOn non je veut traiter les fichiers locale.

par jobherzt » 05 déc. 2005, 16:53

euh, je suis pas sur de suivre, mais un champ de type file ca te permet de choisir un fichier local, alors que toi tu voudrais traiter des fichiers en ligne ? donc je pense que l'erreur vient de ton formulaire, ca n'est pas aussi simple, il faudrait lister les fichiers presents dans le repertoire, ppour pouvoir en selectionner 1.

par phpdog » 05 déc. 2005, 15:54

Sa se complique :
Maintenant je suis entrain de créer un formulaire qui permet de sélectionner un fichier à traiter, voici le formulaire :
<form method="POST" action="SupprLatin.php" enctype="multipart/form-data">
  <!-- champs d'envoi de fichier, de type file -->
  <p><label for="SupprLatin">Aller chercher le fichier: </label><input type="file" name="SupprLatin" /></p>
  <p><input type="submit" name="envoi" value="Traiter le fichier" /></p>
</form>

Et voici le script php :
<?php
	  
	 if(!isset($_POST['SupprLatin']) || empty($_POST['SupprLatin'])){ 
         print("<center>Aucun fichier n'a été selectionner !</center>"); 
         echo "<script type='text/javascript'>window.location.replace(‘index.php');</script>";	 // Redirection vers l'index
      } else {                                                  
	 
	 $LatinSuppr = $_POST['SupprLatin'];            
	 

	 $texte=file_get_contents($LatinSuppr);                      
	 $texte=str_replace(ASupprimer,'',$texte);     
	 $fp = fopen ($LatinSuppr, "w+");                            
     fputs ($fp, $texte);                                        
	 fclose ($fp);                                               
                        
	 
	 
     echo "<script type='text/javascript'>window.location.replace(‘index.php');</script>";
	 } 
?>
Mais hélas se ne fonctionne pas, quelqu’un pourrait-il m’aider à trouver le bug ?
Il n’y a pas de message d’erreur.

par phpdog » 05 déc. 2005, 15:34

Merci à tous pour votre patience :wink:

par phpdog » 05 déc. 2005, 15:33

Ah oui, effectivement, voila maitenant sa marche parfaitement:
<?php
$texte=file_get_contents("fichier.txt"); // On lit le fichier
$texte=str_replace('Merde' ,'',$texte); // on suprimme tout les [ Merde ] dans le fichier
$fp = fopen ("fichier.txt", "w+"); // On ouvre le fichier
// On écrit le nouveau fichier
fclose ($fp); // On ferme le fichier
?>

par jobherzt » 05 déc. 2005, 15:26

excuse moi, je t'ai induit en erreur, mais ca prouve que tu n'as pas lu la doc :-) mauvais reflexe !! get_file_content ne prend pas en parametre un handle sur un fichier mais directement le nom du fichier. autrement dit, il n'y a pas besoin de l'ouvrir au prealable, ni de le fermer ensuite.

par phpdog » 05 déc. 2005, 15:16

Merci :wink:

J'ai rajouter se point virgule:
<?php 
     $fp = fopen ("fichier.txt", "r");      // On ouvre le fichier 
     $texte=file_get_contents($fp);                // On lit le fichier 
     fclose ($fp);                        // On ferme le fichier 
     $texte=str_replace('Merde' ,'',$texte); // on suprimme tout les [ Merde ] dans le fichier 
     $fp = fopen ("fichier.txt", "w+");      // On ouvre le fichier 
           // On écrit le nouveau fichier 
     fclose ($fp);                        // On ferme le fichier 
?> 
Et voici l'erreur maitenant:

Code : Tout sélectionner

Warning: file_get_contents() expects parameter 1 to be string, resource given in c:\WWW\remplc.php on line 3

par jobherzt » 05 déc. 2005, 15:13

Hum... tu as oublie un point virgule qqpart....... :D :D :D :D :D :D :D :D

[edit] et au meme endroit tu as une parentehese en trop :-)[/Edit]

je te laisse chercher aux alentour de la ligne 4 :-)

par phpdog » 05 déc. 2005, 15:02

Bonjour Iclo :wink:

Voici l'erreur:

Code : Tout sélectionner

Parse error: parse error in
Ben justement la je ne pige pas.

par iclo » 05 déc. 2005, 14:59

Dis, tu ne pourrais pas y mettre un peu du tien ?
Parce que j'ai une erreur à la ligne 4, c'est un peu beaucoup limité comme info.
Quel est le message d'erreur ?
Qu'as-tu essayé pour solutionner le problême avant de poster?
Etc

nous ne sommes pas des débuggeures bénévoles en ligne. Tu as un problême, tu ne comprends quelques chose, ok on est là pour ça, mais pas pour faire tout le boulot à ta place...

par phpdog » 05 déc. 2005, 14:55

OK, don maitenant j'ai ceci:
<?php 
     $fp = fopen ("fichier.txt", "r");      // On ouvre le fichier 
     $texte=file_get_contents($fp))                // On lit le fichier 
     fclose ($fp);                        // On ferme le fichier 
     $texte=str_replace('Merde' ,'',$texte); // on suprimme tout les [ Merde ] dans le fichier 
     $fp = fopen ("fichier.txt", "w+");      // On ouvre le fichier 
           // On écrit le nouveau fichier 
     fclose ($fp);                        // On ferme le fichier 
?>

Et la j'ai une erreur sur la ligne 4.

par jobherzt » 05 déc. 2005, 08:53

exact, $fp designe ton fichier, mais il faut bien que tu lui dise ou stocker le texte que tu as lu dedans..