IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

fonction str_replace indefinie


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 49
    Par défaut fonction str_replace indefinie
    bonjour je voudrais remplacer des balises xml dans un fichier kml (format xml de google earth) mais j'ai un petit souci mon code me renvoie l'erreur suivante : Undefined variable: newkml

    voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    <?php
     
     
     
     
     
    $fp = fopen("test_str_replace.kml", "a+" ); 
     
     
     
     
    $kml=  "
     
    <Placemark> 
    <name>IUT Carcassonne</name> 
    <description>ajout de point </description> 
    <Point> 
    <coordinates>2.342303,43.188986</coordinates> 
    </Point> 
    </Placemark> 					
     ";
     
     
    $new =  htmlentities($kml)  ; 
     
    $newkml = str_replace('</document></kml>', $new .'</document></kml>',$newkml ) ;
    echo $new;
     
     
     
     
    fclose($fp);
    voici le code du fichier kml dans lequel j'écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0"?>
    <kml xmlns="http://earth.google.com/kml/2.2">
    <Document>  
    <Placemark> 
    <name>IUT Carcassonne</name> 
    <description>ajout de point </description> 
    <Point> 
    <coordinates>2.342303,43.188986</coordinates> 
    </Point> 
    </Placemark> 
    </document>
    </kml>
    Pouvez vous m'aidez?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    A mon avis, tu veux plutot ecrire ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $newkml = str_replace('</document></kml>', $new .'</document></kml>',$kml ) ;
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 49
    Par défaut
    oui , merci
    Mais je ne comprend pas à quoi correspond le 3éme argument de la fonction str_replace()

    et mon code ne fonctionne toujours pas le fichier kml n'est pas modifié

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    $fp = fopen("test_str_replace.kml", "a+" ); 
     
     
     
     
    $kml=  "
     
    <Placemark> 
    <name>IUT Carcassonne</name> 
    <description>ajout de point2 </description> 
    <Point> 
    <coordinates>2.342303,43.188986</coordinates> 
    </Point> 
    </Placemark> 					
     ";
     
     
    $new =  htmlentities($kml)  ; 
     
    $newkml = str_replace('</document></kml>', $new .'</document></kml>',$kml ) ;
    echo $new;
     
     
     
     
    fclose($fp);

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    str_replace(replace_ca, par_ca, dans_ca)
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 49
    Par défaut
    merci donc il faut pour pouvoir remplacer mes balises </document></kml>', par $new .'</document></kml> , que je charge dans une variable le fichier dans lequel je veux réaliser cette action et qu'elle soit placée en troisième argument de la fonction str_replace

    C'est bien cela?

    Comment faire pour charger mon fichier kml dans une variable ?

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    avec file_get_contents()
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Utilisation de la fonction str_replace
    Par turican2 dans le forum Langage
    Réponses: 5
    Dernier message: 11/10/2008, 13h45
  2. problème fonction str_replace
    Par Sh4dow49 dans le forum Langage
    Réponses: 5
    Dernier message: 21/07/2008, 14h23
  3. [Tableaux] simplifier fonction str_replace
    Par nicerico dans le forum Langage
    Réponses: 7
    Dernier message: 04/12/2006, 16h45
  4. [Système] Probleme avec la fonction str_replace
    Par british_toons dans le forum Langage
    Réponses: 1
    Dernier message: 21/09/2006, 20h57
  5. [Tableaux] Fonction str_replace et les accents
    Par GarGamel55 dans le forum Langage
    Réponses: 5
    Dernier message: 18/02/2006, 19h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo