Salut à tous. je me retrouve devant un phénomène qu'on pourrait qualifier de paranormal (surtout après pas mal de temps dessus).
J'ouvre un fichier dans lequel je fais des str_replace. Si je le met avant la reception d'un $_FILES. ca marche. Si je le met après, mes "règles" de replace sont baffoué en étant dédoublée.
Voici la ligne que je veux remplacer (elle se trouve dans un fichier .HTM)
Je vais donc chercher ce fichier et remplacer ce que je veux
ici $fichier vient de $_POST (c'est mon champ file).
juste en dessous de ces lignes j'ai un :
Donc je récupère mon input file.
Si je fais ca comme cela, ca fonctionne.
Mais si je place la reception du $_FILES au dessus de la variable $txt_page ....
voila ce que j'obtient dans ma page HTML
=>
Bon ok ... ca marche donc c'est pas bien grave. Mais ca m'intrigue. Il n'y à aucune boucle dans la page qui pourrait produire cet effet...
Est-ce que quelque part str_replace et $_FILES ne s'aiment pas ?
C'est un peu confus comme explication mais je ne comprend pas bien non plus en fait ...;
Si vous pouviez m'éclairer pour ma culture personnelle.
Rude
Modifié par ffwrude (08 Oct 2007 - 18:43)
J'ouvre un fichier dans lequel je fais des str_replace. Si je le met avant la reception d'un $_FILES. ca marche. Si je le met après, mes "règles" de replace sont baffoué en étant dédoublée.
Voici la ligne que je veux remplacer (elle se trouve dans un fichier .HTM)
<img width='248' height='155' src="aide/welcome_fichiers/image001.jpg" />
Je vais donc chercher ce fichier et remplacer ce que je veux
$txt_page = file_get_contents ($fichier);
/* SUPPRESSION DU SUPERFLU DANS LE FICHIER */
$txt_page = str_replace("clear=ALL", "", $txt_page);
$txt_page = str_replace('src="', 'src="aide/', $txt_page);
$txt_page = str_replace('aide/aide/', 'aide/', $txt_page);
$txt_page = str_replace('.gif', '.jpg', $txt_page);
/* SUPPRESSION DU SUPERFLU DANS LE FICHIER */
ici $fichier vient de $_POST (c'est mon champ file).
juste en dessous de ces lignes j'ai un :
$fichier = $_FILES['fichier']['name'];
Donc je récupère mon input file.
Si je fais ca comme cela, ca fonctionne.
Mais si je place la reception du $_FILES au dessus de la variable $txt_page ....
voila ce que j'obtient dans ma page HTML
=>
[b]si je le met après : [/b]
<img width='248' height='155' src="aide/welcome_fichiers/image001.jpg" />
[b]Si je le met avant : [/b]
<img width='248' height='155' src="aide/aide/aide/aide/aide/aide/aide/welcome_fichiers/image001.jpg" />
Bon ok ... ca marche donc c'est pas bien grave. Mais ca m'intrigue. Il n'y à aucune boucle dans la page qui pourrait produire cet effet...
Est-ce que quelque part str_replace et $_FILES ne s'aiment pas ?
C'est un peu confus comme explication mais je ne comprend pas bien non plus en fait ...;
Si vous pouviez m'éclairer pour ma culture personnelle.
Rude
Modifié par ffwrude (08 Oct 2007 - 18:43)