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 :

Erreur d'analyse lors de la lecture d'un fichier INI


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut Erreur d'analyse lors de la lecture d'un fichier INI
    Bonjour les amis,
    J'ai un petit problème de string dans un fichier que j'aimerais vous soumettre si quelqu'un pourra m'aider.
    D'avance je vous remercie beaucoup.

    Je reçois des erreurs quand je déclare ma variable dans le fichier ini de cette façon :
    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
    33
    34
    35
    36
    37
    38
    39
    [Template]
    templ="<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>{tabmetatitre}</title>
    <meta http-equiv="Content-Language" content="{tablang}">
    <meta name="Description" content="{tabmetadescription}">
    <meta name="Keywords" content="{tabmetakey}">
    <meta name="Author" content="{taburl}">
    <meta name="Reply-to" content="aide@test.com">
    <meta name="Identifier-URL" content="{tabcurrenturl}">
    <meta name="Copyright" content="{taburl}">
    <meta name="Revisit-after" content="7 days">
    <meta name="Robots" content="all">
    <base href="http://localhost/test/">
    </head>
     
    <body>
    <div id="contentwrapper">
    <div id="connexion"><img src="public/themes/designs/mydesigns/images/puce.gif" /><a href="#">Connexion</a></div>
    <div id="menu">
    <ul id="nav">
    {primarylink}
    </ul>
    </div>
    </div>
    <div id="rightcolumn-bloc2">
    <div id="contentcolumnText"><div class="bloc-photo"><img src="public/themes/designs/mydesigns/images/homme-souriant.jpg" width="230" height="210" /></div>
    {tabtitre}
    {tabcontenu}
    </div>
     <div id="footer"><div id="footer-block"><a href="">Copyright 2010</a></div></div>
    </div>
    </div>
    </body>
    </html>
     
    "
    Encore milles merci pour votre aide.

  2. #2
    Membre Expert Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Par défaut
    tu utilises quoi pour lire le fichier INI ?

  3. #3
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Et surtout, quelles sont les erreurs que tu reçois ?


    edit:
    Je pense que je viens de comprendre

    tu chercher à définir une valeur à templ t pour ça tu encadre ta valeur de "
    Mais ton problème c'est qu'il y a plein de " à l'intérieur de ton texte. Donc ça bug

    Essaye de remplacer le tout premier " par un ' (celui juste apres le =)
    Pareil pour le dernier (tt en bas)

  4. #4
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut
    Merci bcp pour vos réponses.
    Même en remplaçant les doubles quotes par les simples, j'ai toujours le même message d'erreur
    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
    33
    34
    35
    36
    37
    38
    39
    40
     
    [Template]
    templ='
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>{tabmetatitre}</title>
    <meta http-equiv="Content-Language" content="{tablang}">
    <meta name="Description" content="{tabmetadescription}">
    <meta name="Keywords" content="{tabmetakey}">
    <meta name="Author" content="{taburl}">
    <meta name="Reply-to" content="aide@test.com">
    <meta name="Identifier-URL" content="{tabcurrenturl}">
    <meta name="Copyright" content="{taburl}">
    <meta name="Revisit-after" content="7 days">
    <meta name="Robots" content="all">
    <base href="http://localhost/test/">
    </head>
     
    <body>
    <div id="contentwrapper">
    <div id="connexion"><img src="public/themes/designs/mydesigns/images/puce.gif" /><a href="#">Connexion</a></div>
    <div id="menu">
    <ul id="nav">
    {primarylink}
    </ul>
    </div>
    </div>
    <div id="rightcolumn-bloc2">
    <div id="contentcolumnText"><div class="bloc-photo"><img src="public/themes/designs/mydesigns/images/homme-souriant.jpg" width="230" height="210" /></div>
    {tabtitre}
    {tabcontenu}
    </div>
     <div id="footer"><div id="footer-block"><a href="">Copyright 2010</a></div></div>
    </div>
    </div>
    </body>
    </html>
    '

  5. #5
    Membre Expert Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Par défaut
    Citation Envoyé par nosferapti Voir le message
    tu utilises quoi pour lire le fichier INI ?

  6. #6
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut
    J'utilise un code simple fait par moi. Je préfère utiliser cette fonction, ça répond à ce que je cherche. Le problème ne viendrait pas de la déclaration de ma variable dans ini ?

    Voici la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function la_fonction_qui_remplace(array $tab, $texte) {
    	$arrSearch = array();
    	$arrReplace = array();
    	foreach($tab as $key => $val) {
    	$arrSearch[] = '{'.$key.'}';
    	$arrReplace[] = $val;
    	}
    	return str_replace($arrSearch,$arrReplace,$texte);
    }
    Voici l'appel de la fonction pour lire la variable templ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    //Appel de template
    $template = 'public/themes/templates/default.ini';
    $tabTemplate = parse_ini_file($template,true);
    $arr = array('primarylink' => $primarylinks ,'secondarylink' => $secondarylinks,'tabfooter' => $footer,'tabcontenu' =>$lecontenu, 'tabtitre'=>$letitre, 'tabmetatitre'=>$lemetatitre, 'tablemetadescription'=>$lemetadescription, 'tabdesign'=>$ledesign, 'taburl'=>$siteurl, 'tabcurrenturl'=>$currenturl,'tabmetakey'=>$lemetakey, 'tablang'=>$lang);
    echo la_fonction_qui_remplace($arr,$tabTemplate['Template']['templ']);
    D'avance merci beaucoup

  7. #7
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut
    Bonjour les amis,
    J'ai essayé de faire la même chose en déclarant dans mon fichier ini un bout de code comme ceci , et ça marche bien. Je ne comprends pas pourquoi l'autre me donne des erreur de déclaration de string dans ini.
    Voici le code qui marche bien.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [Template]
    templ="<div id="wrapper">
    <div id="lang"><a href="fr/lang/texte/index.php" class="menuLang">FR</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="en/lang/texte/index.php" class="menuLang">EN</a></div>
    <div id="menus_conteneur"><div id="menus">{primarylink}</div></div>
    <div id="adresse">Rue des Lions 4<br />
    Fribourg - Suisse<br />
    </div>
    <div  id="contenuScroll">
    <div id ="contenu"><br />{contenu}</div>
    </div>
    <div id="copyright"><a href="#" class="menuCopyright">Mon site</a></div>
    </div>"
    D'avance, merci pour votre aide

Discussions similaires

  1. Erreur E/S 145 lors de la lecture d'un fichier
    Par stanislas dans le forum Langage
    Réponses: 0
    Dernier message: 09/06/2009, 08h53
  2. Erreur "mémoire insuffisante" lors de la lecture d'un film
    Par nyme92 dans le forum Installation
    Réponses: 5
    Dernier message: 21/12/2008, 20h19
  3. [XSLT] Erreur lors de la lecture d'un fichier XSL
    Par Mobius dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 14/05/2008, 14h25
  4. Erreur lors de la lecture d'un fichier
    Par akremb22 dans le forum Delphi
    Réponses: 14
    Dernier message: 11/04/2007, 15h15
  5. Réponses: 15
    Dernier message: 31/03/2007, 16h32

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