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

JavaScript Discussion :

Fonction JS dans du code PHP


Sujet :

JavaScript

  1. #1
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2009
    Messages : 43
    Par défaut Fonction JS dans du code PHP
    Bonjour,
    Je cherche à exécuter une fonction JavaScript dans du code PHP.
    En fait, lorsque je clique sur un lien, celui-ci recharge la page en m'envoyant un paramètre en GET.
    Au rechargement de la page, si ce paramètre GET est là, il exécute alors du code PHP qui doit appeler une méthode JavaScript (qui est dans script.js).

    J'ai bien essayé ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<script>mafonction('arg1', 'arg2');</script>'
    Mais il écrit juste dans la page, il ne l'exécute pas.

    Pouvez-vous m'aider ?

  2. #2
    Membre très actif
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<script>mafonction('arg1', 'arg2');</script>'
    Ici, tu mets tes variables comme si elle était en PHP, sans les concaténer. C'est une petite erreur...

    Si arg1 et arg2 sont bien des valeur JS, il te suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script>mafonction('arg1', 'arg2');</script>"
    Si c'est des variables PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<script>mafonction('.$arg1.', '.$arg2.');</script>'

  3. #3
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2009
    Messages : 43
    Par défaut
    Oui, c'est vrai que j'ai simplifier au maximum mon code pour le message mais les variables sont bien concaténer dans mon vrai code car ce sont des variables php, et ca ne marche toujours pas...

  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 : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Si j'ai bien compris, tu veux que PHP exécute du code JavaScript ?
    Mais avec quel interpréteur JavaScript crois-tu qu'il pourra le faire ? Et surtout en se basant sur quelle structure DOM ?
    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
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2009
    Messages : 43
    Par défaut
    En fait, mon code PHP c'est ca (dans le body) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    if (isset($_GET["tag"])) {
    		$sqlLink = "SELECT projet FROM projet_tag WHERE tag=".$_GET["tag"];
    		$resultatLink = mysql_query($sqlLink);
    		$projets = array();
    		$i = 0;
    		while ($ligne = mysql_fetch_row($resultatLink)) {
    			$projets[$i] = $ligne[0];
    			$i++;
    		}
    		echo '<script type="text/javascript">selectTag('.$_GET["tag"].', '.$projets.');</script>'; /*c'est là que je veux appeler ma fonction Javascript*/
    	}
    Donc ma fonction selectTag est dans un fichier JS à côté.
    Y a-t-il un autre moyen de régler mon problème ?

  6. #6
    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 : 54
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par Zanthia
    Y a-t-il un autre moyen de régler mon problème ?
    Si ta question est de savoir s'il y a un moyen de faire exécuter par PHP du code JavaScript, la réponse est toujours NON !
    Ta fonction JavaScript est logiquement destinée à être exécutée dans un navigateur, PHP ne sais même pas que la notion de navigateur existe !
    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

  7. #7
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2009
    Messages : 43
    Par défaut
    Ok, le fait que le javascript peut pas être executé à partir du PHP j'ai compris.

    Donc, je cherche un autre moyen pour pouvoir exécuter ce qu'il y a dans ma fonction JS (jouer sur l'opacité de certains éléments que je passais en paramètre)

  8. #8
    Membre très actif
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Par défaut
    Mets nous ton code pour que l'on comprenne un peu mieux ce que tu cherches à faire.

    Si c'est juste une question d'affichage ou pas ça sera plus clair !

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    si je comprends, tu veux juste inscrire dans une fonction javascript des valeurs préalablement définies avec php.

    Il me semble que tu as juste une erreur de ' autour des 2 données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		echo '<script type="text/javascript">selectTag(\''.$_GET["tag"].'\', \''.$projets.'\');</script>'; /*c'est là que je veux appeler ma fonction Javascript*/
    devrait donner dans la source :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">selectTag('lestags', 'lesprojets');</script>
    PAR CONTRE : ta requete n'est PAS DU TOUT PROTEGEE contre les injections SQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		$sqlLink = "SELECT projet FROM projet_tag WHERE tag = '".mysql_real_escape_string($_GET["tag"])."';";
    Idem quand tu mets $_GET["tag"] dans le <script> !

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

Discussions similaires

  1. Appel de fonction Javascript dans un code php
    Par missmiss89 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/07/2011, 15h24
  2. [PHP 5.3] retourne le resultat d'une fonction javascript dans un code php
    Par abir001 dans le forum Langage
    Réponses: 4
    Dernier message: 13/04/2010, 14h36
  3. Réponses: 5
    Dernier message: 18/01/2010, 10h13
  4. Appeler une fonction dans un code PHP
    Par Nasky dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/08/2007, 16h19
  5. Réponses: 4
    Dernier message: 30/05/2007, 18h05

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