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 :

Passage d'argument JS dans une fonction PHP


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de marcootz
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 159
    Points : 104
    Points
    104
    Par défaut Passage d'argument JS dans une fonction PHP
    Salut,

    Je bloque sur un affichage un peu tordu. Je souhaite passer en paramètre d'un fonction PHP, une variable de mon script JS.

    Voici ma fonction php (simplifiés pour l'exemple) :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function getQL($arg_1){
        return $arg_1;
    }

    Dans ma ligne d'affichage JS je souhaiterai appeler la fonction PHP getQL() et ecrire en argument une variable de mon script JS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var $maVarJs = "hello";
    .append( $('<td/>').text(<?PHP echo getQL( $maVarJs ) ?>))
    Évidement le code ci-dessus ne fonctionne pas, mais c'est dans l'idée ce que je souhaiterais faire. Pourriez vous m'aiguiller ??

    Merci d'avance pour vos réponses !

  2. #2
    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
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    PHP s'exécute côté serveur, c'est-à-dire avant que le document HTML ait été envoyé au navigateur et donc que JavaScript n'existe.
    JavaScript s'exécute côté client dans le navigateur, donc bien après que PHP ai envoyé son contexte dans les oubliettes des circuits imprimés.

    Sachant cela, comment veux-tu qu'ils puissent échanger la moindre information ?

  3. #3
    Membre régulier Avatar de marcootz
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 159
    Points : 104
    Points
    104
    Par défaut
    Merci pour ta réponse Bovino, ça m'a permis d'y voir plus clair.
    Effectivement je n'y était pas du tout...J'ai néanmoins pu trouver une solution pour mon problème si cela peut aider quelqu'un :

    J'ai conservé la requete mysql avec le php dans mon fichier, puis j'encode le résultat grâce à la fonction json_encode
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ...$result = mysql_query($query);
    $rows = array();
    while($r = mysql_fetch_assoc($result)) {
        $rows[] = $r;
    }
    $json = json_encode ($rows); //JSON_FORCE_OBJECT

    Ensuite pour l'affichage dans la partie JS, je "parse" la ligne obtenue avec php, puis fait le traitement avec la fonction getQuickLink
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var json_obj = jQuery.parseJSON(' <?php echo $json; ?> ');
    function getQuickLink(filename){
    		for (var i in json_obj){
    			if(json_obj[i].filename == filename)
    				return json_obj[i].quicklink;
    		}	
    }
    ...
    .append( $('<td/>').text(getQuickLink($name)));
    ...
    A+

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

Discussions similaires

  1. passage d'un argument void* dans une fonction
    Par angel46 dans le forum C
    Réponses: 3
    Dernier message: 25/11/2007, 17h53
  2. Réponses: 1
    Dernier message: 25/10/2007, 21h25
  3. Passage d'un textarea dans une fonction
    Par fffonck dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 16/08/2007, 17h00
  4. [PHP-JS] Récupérer champ checkbox dans une fonction php
    Par Tyler Durden dans le forum Langage
    Réponses: 7
    Dernier message: 09/11/2006, 00h54
  5. [.NET2.0][C#]Passage type de classe dans une fonction
    Par SLE dans le forum Windows Forms
    Réponses: 4
    Dernier message: 06/06/2006, 15h48

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