Str_replace une seul donnee

Résolu
Bonjour,

j ai essayer de modifier un variable qui ce trouve dans un fichier mes au lieu de modifier seulement la variable il modifie toutes les variables qui on la meme donne alors que moi je souhaite qu il ne modifie que une seul donnee

voila ce que j ai essayer de faire est qui ne marche pas

/////////////
$filea = "includes/form/form1.php";
$content = file_get_contents($filea);
$replace2 = "test1";
$count = 1;
$content = substr_replace("\"\"", $replace2, $content, 10);
file_put_contents($filea, $content);
///////////////////
fichier a modifier

<?php
// tableau des valeur du formulaire 1
$valeurfr1[0] = "http://www.01ref.com/submit_site.php"; // attribut action
$valeurfr1[1] = "post"; // attribut method GET ou POST
$valeurfr1[2] = "form1"; // nom du formulaire
$valeurfr1[3] = "nom_proprio"; // du nom du webmaster
$valeurfr1[4] = ""; //variable du prenom
$valeurfr1[5] = "titre"; // variable du titre
$valeurfr1[6] = "url"; // variable de url
$valeurfr1[7] = "email_proprio"; // email
$valeurfr1[8] = "description"; // description
$valeurfr1[9] = "id_cat"; // variable du menu
$valeurfr1[10] = ""; // login
$valeurfr1[11] = ""; // passe
$valeurfr1[12] = ""; // mot cle
// le reste son des valeur cacher par defaut
$valeurfr1[13] = "action";
$valeurfr1[14] = "submit";
$valeurfr1[15] = "value";
$valeurfr1[16] = "submit";
$valeurfr1[17] = "";
$valeurfr1[18] = "";
$valeurfr1[19] = "";
$valeurfr1[20] = "";
$valeurfr1[21] = "";
$valeurfr1[22] = "";
$valeurfr1[23] = "";
$valeurfr1[24] = "";

?>

MERCI de votre aide
Configuration: Windows XP Internet Explorer 7.0

9 réponses

  • Votes
  • Date
  • Date décroissante
  1. la solution etait

    $content = preg_replace ('#'.$form1[$a][0].'#', $rep, $content, 1);
    1. de rien, c'est avec plaisir par contre si tu pouvais communiquer ta solution cela aiderais surement les autres .. ;-)
      1. merci de l interet que tu porte a mon probleme
        merci de ton aide

        mais j ai trouve la reponse a mon probleme dans un autre forum

        merci et bonnee soiree
        1. reprenons par ordre.. ton tableau $valeurfr1 il sort d'ou ?

          et celui la $form1[$a][2] tu l'obtient comment ?
          1. bonsoir

            quel qu un pourai m aidez si vous plait a l aide au secours
            1. bonjour

              j ai tester ce code

              $content = preg_replace ($form1[$a][2], $replace3, $content, 1);

              est ca ne marche pas
              ca m affiche ce message d erreur
              Notice: Undefined offset: 1 in C:\Program Files\EasyPHP3.1\www\test0500\labo1_test1\modifierformulaire.php on line 60

              Warning: preg_replace() [function.preg-replace]: Empty regular expression in C:\Program Files\EasyPHP3.1\www\test0500\labo1_test1\modifierformulaire.php on line 60

              Notice: Undefined offset: 2 in C:\Program Files\EasyPHP3.1\www\test0500\labo1_test1\modifierformulaire.php on line 61

              Warning: preg_replace() [function.preg-replace]: Empty regular expression in C:\Program Files\EasyPHP3.1\www\test0500\labo1_test1\modifierformulaire.php on line 61

              aide moi si vous plait
              1. je voudrai savoir si le probleme ne bien pas de
                $content = file_get_contents($filea);

                ?????
                1. bonjour j ai essayer ca

                  $rep = "sssss";
                  $content = str_replace ("\"\"", $rep, $form1[$a][10]);

                  est le resultat ca efface tout le fichier
                  1. tu fait ton str_replace dans ton tableau d'origine...
                    $var=str_replace("\"\"", "tavaleurderemplacement", $valeurfr1[tacolonneamodifier]);