remplacer un caractere sur l'ouverture d'un fichier texte

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 un caractere sur l'ouverture d'un fichier texte

par Ultiny » 09 nov. 2005, 20:18

Nan j'ai changé d'idée finalement, en plus l'autre marchait pas...
<?php

if (file_exists("./test.txt")) {

	$line = file_get_contents("./test.txt");

	$str = fopen("./test.txt","w+"); 
	$line = str_replace(";", ",", $line); 

	fwrite($str, $line);
	fclose($str);
} 
else {
	echo "raté";
} 

?>

par Ultiny » 09 nov. 2005, 20:01

<? 
if (file_exists('test.txt')) 
{

$chaine=fopen("test.txt","r+"); 

$ligne= str_replace(";" , "," , $ligne);

fwrite($chaine, $ligne);

fclose($chaine); 
} 
else 
{echo "raté";} 

?>

par saebakun » 09 nov. 2005, 18:29

ça ne fonctionne pas non

par DarkBlue » 09 nov. 2005, 18:18

$ligne=nl2br($lignes) 
juste apres l ouverture du fichier pour que tout les sauts de liignes soit biien conservés

par saebakun » 09 nov. 2005, 18:14

<?
if (file_exists('test.txt'))
{

$chaine=fopen("test.txt","r+");
$test2=fopen("test2.txt,"w");

while ($ligne = fgets($chaine))

$up= str_replace(";" , "," , $ligne);

fputs($test2,$up);

fclose($test2);
fclose($chaine);
}
else
{echo "raté";}

?>


voilà il m'insert bien les lignes modifiers mais il ne prend plus en compte les retours à la ligne....

elles sont toutes d'affillé...

comment je peux faire pour qu'après chaque ligne il me fasse un retour à la ligne?

par saebakun » 09 nov. 2005, 17:56

il me met ça:


Warning: fputs(): supplied argument is not a valid stream resource in /home/admin/www/html/csv/csv2sql.php on line 13

par DarkBlue » 09 nov. 2005, 17:50

c est pas
fputs($chaine,$lignes) 
qu il faut mettre mais
fputs("test.txt",$lignes);

par saebakun » 09 nov. 2005, 17:48

voilà la modif
<?
if (file_exists('test.txt'))
{

$chaine=fopen("test.txt","r+");

while ($ligne = fgets($chaine))

echo $ligne;

$ligne= str_replace(";" , "," , $ligne);

fputs($chaine,$ligne);
fclose($chaine);
}
else
{echo "raté";}

?>

mais toujours rien

par pitt » 09 nov. 2005, 17:05

De plus je pense que le echo étant avant le remplacement il t'afficheras des lignes non modifiees

par DarkBlue » 09 nov. 2005, 17:03

<? fwrite($fichier,$texte);
// ou
fputs($fichier,$texte); ?>

par saebakun » 09 nov. 2005, 17:00

ha?

et comment je fais ça?

par DarkBlue » 09 nov. 2005, 16:58

il ne change ren dans le fchier ? si c est ça que tu veux c est parce que tu n'as pas reecris le texte modifié dans le fichier .

remplacer un caractere sur l'ouverture d'un fichier texte

par saebakun » 09 nov. 2005, 16:56

Bonjour,

voilà j'ai un fichier texte qui contient des champs separés par des ; et je voudrias remplacer ça par des , voilà mon code:
<?
if (file_exists('test.txt'))
{

$chaine=fopen("test.txt","r+");

while ($ligne = fgets($chaine))

echo $ligne;

$ligne= str_replace(";" , "," , $ligne);

fclose($chaine);
}
else
{echo "raté";}

?>

Voilà donc il m'affiche bien les lignes mais il ne change rien ....

je suis en chmod 777 sur le txt aussi