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 :

Gestion de quotes imbriquées


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 219
    Points : 336
    Points
    336
    Par défaut Gestion de quotes imbriquées
    Bonjour, je vous présente mon problème.

    Dans une page php, j'utilise la fonction javascripte suivante dans le head :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <head>
    ...
    <script type='text/javascript'>
    var texteArticle;
    var idArticle;
    function saisie(idArticle, texteArticle)
    {
    alert(idArticle);
    alert(texteArticle);
    }
    </script>
    </head>

    Puis dans la même page j'appelle cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<a onClick='saisie(".$rowArt[6].", ".$rowArt[3].");'>lien</a>";
    Le premier paramètre de ma fonction est un nombre, mais le deuxième paramètre est une chaine. Je dois donc encadrer $rowArt[3]de quotes.
    Mais la double quote est deja "utilisée" par le echo, et la simple cote pour encadrer l'évènement OnClick.

    Echapper les quotes ne marchent pas..

    J'aurais bien aimé inventé une quote triple

    Merci d'avance.
    Si débugger est l'art de corriger les bugs, alors programmer est l'art d'en créer.

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Mais si ça fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<a onClick='saisie(".$rowArt[6].", \'".$rowArt[3]."\')'>lien</a>";
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 219
    Points : 336
    Points
    336
    Par défaut
    Chez moi le navigateur m'affiche tout ce qui suit la simple cote de la variable $rowArt ...
    Si débugger est l'art de corriger les bugs, alors programmer est l'art d'en créer.

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Ce que sabotage t'a montré, c'est le principe pour échapper les quotes. Ensuite, il s'est un peu embrouillé avec l'imbrication obtenue, mais ça, c'est facile à corriger si on regarde un minimum le code...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<a onClick=\"saisie(".$rowArt[6].", '".$rowArt[3]."')\">lien</a>";
    (en partant du principe qu'en HTML, on préfère souvent les doubles quotes pour encadrer les valeurs d'attribut).

    Ceci dit, tu t'en sortirais plus facilement avec une syntaxe Heredoc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $html = <<<HTML
    <a onClick="saisie({$rowArt[6]}, '{$rowArt[3]}')">lien</a>
    HTML;
    echo $html;
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 219
    Points : 336
    Points
    336
    Par défaut
    Merci à tous cela m'a bien aidé.
    Si débugger est l'art de corriger les bugs, alors programmer est l'art d'en créer.

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Ensuite, il s'est un peu embrouillé avec l'imbrication obtenue
    en plus je m'y suis pris a deux fois.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion d'exception imbriquées
    Par khadi8 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 16/03/2013, 13h13
  2. Gestion des exceptions imbriquée dans des Try et boucle
    Par Droïde Système7 dans le forum Débuter
    Réponses: 7
    Dernier message: 13/01/2010, 18h30
  3. [2.3.1] Gestion des tables imbriquées
    Par elbrujo2323 dans le forum BIRT
    Réponses: 9
    Dernier message: 05/01/2009, 15h27
  4. gestion des quotes
    Par c+cool dans le forum Langage SQL
    Réponses: 6
    Dernier message: 12/08/2008, 08h51

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