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 :

récupération des variables php


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 8
    Points
    8
    Par défaut récupération des variables php
    bonjour;

    j'ai un code php dont j'ai récupéré deux variables de la base de donnée mysql
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $longit=$sql_row["Longitude"];
    $latit=$sql_row["Latitude"];


    et dans la partie javascript j'ai la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function showPosition(position) {
        	var lat = .........;
        	var lng =.............;
    }
    je veut récupérer ces deux variables,
    j'ai essayé var lng =<?php echo $longit;?>ça ne marche pas

    comment faire??

  2. #2
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    Il faut générer le code javascript coté PHP, et non générer le code php dans le document javascript, comme tu l'as fait.

    par exemple :

    Code php : 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
    <?php
    $titreAlbum = 8;
    echo '<!DOCTYPE html>
    <html>
      <head>
        <title>Test</title>
        <meta charset="utf-8">
        <script>
          function AddOneRow(){
            var newRow = document.getElementById("matable").insertRow(-1);
            var newCell = newRow.insertCell(0);
            newCell.innerHTML = '.$titreAlbum.';
          }
        </script>
      </head>
      <body>
        <div>test</div>
      </body>
    </html>';
    ?>

    Sinon il y a une autre méthode. Tu renommes ton fichier js en fichier php. Tu lui mets un "header" pour qu'il soit interprété comme du js une fois généré par php, et tu l'inclus comme un fichier js classique.

    Exemple :

    Fichier "fonction.php" (qui est en fait ton fichier javascript)
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    header("Content-type: application/x-javascript");
     
    function AddOneRow(){
      var newRow = document.getElementById("matable").insertRow(-1);
      var newCell = newRow.insertCell(0);
      newCell.innerHTML = <?php echo $titreAlbum; ?>;
    }

    Fichier "index.html", pour l'inclure dans les <head> :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!DOCTYPE html>
    <html>
      <head>
        <title>Test</title>
        <meta charset="utf-8">
        <script src="fonction.php"></script>
      </head>
      <body>
        <div>test</div>
      </body>
    </html>

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    merci bien,


    le problème c'est que j'ai beaucoup de fonction qui sont liées entre eux

    l'astuce c'est comment je peut cliquer sur un bouton qui fait récupérer les deux valeurs longitude et latitude de la base de donnée; et l'afficher sur map

    j'ai trouvée un code qui récupère mes coordonnées actuelles et faire l'affichage sur map,


    donc tous ce que j'essaye de faire comment les deux variables déclarer dans la fonction je peut les remplacés avec les deux variables de la base de donnée??
    est ce que je met du code pour me comprendre??

  4. #4
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    342
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 342
    Points : 161
    Points
    161
    Par défaut
    Et pourquoi tu ne fais pas tout ce que tu dis la en php ? Tu mets le bouton Sbbmit dans un formulaire et lorsque tu clique sur le bouton la page se recharge et tout ce travail s'effectue en background. A moins que tu me dise que tu ne veux pas que les pages se recharge, tu veux que ta page soit interactive, dans ce cas je te dirais simplement de voir du côté d'Ajax. C'est Ajax qui te servira de lien entre JavaScript et Php.

    Hope this will help

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    voici le code php que j'ai testé;
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
     
    $sql="Select * from localiser";
    $sql_result=mysql_query($sql,$connection1) or exit("Sql Error".mysql_error());
    $sql_num=mysql_num_rows($sql_result);
     
    $longit=$sql_row["Longitude"];
    $latit=$sql_row["Latitude"]; 
    ?>

    et coté javascript j'ai les fonctions suivantes:
    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>;
    <script type="text/javascript">
    function getCoordPosition(){
    if(navigator.geolocation){
    navigator.geolocation.getCurrentPosition(function(position){
    var latitude = position.coords.latitude;
    var longitude = position.coords.longitude;
    var altitude = position.coords.altitude;
    document.getElementById('geolocation').innerHTML = 'latitude : ' + latitude + '<br />' + 'longitude : ' + longitude + '<br />' + 'altitude : ' + altitude + '<br />';
    });
    }
    }
    function showGoogleMap(){
    if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(showPosition);
    // also monitor position as it changes
    navigator.geolocation.watchPosition(showPosition);
    } else {
    console.log("no geolocation support" );
    }
     
    function showPosition(position) {
    var lat = position.coords.latitude;
    var lng = position.coords.longitude;
    var options = { zoom: 13, center: new google.maps.LatLng(lat, lng), mapTypeId: google.maps.MapTypeId.ROADMAP };
    var map = new google.maps.Map(document.getElementById("contentMap" ), options);
    var marker = new google.maps.Marker({ position: new google.maps.LatLng(lat, lng) });
    marker.setMap(map);
    }
    }
    </script>
    </head>
    <body>
    <div id="coords">
    <h1>Les coordonnées</h1>
    <button onClick="getCoordPosition();">Obtenir les coordonnées</button>
    <div id="geolocation"></div>
    <p>
    <a href="javascript:window.close();">Retour à l'article</a>
    </p>
    </div>
    <div id="map">
    <h1>Exemple avec Google Map</h1>
    <button id="see_position" onClick="showGoogleMap();">Position sur Google Map</button>
    <div id="contentMap" style="height: 280px"></div>
    <p>
    <a href="javascript:window.close();">Retour à l'article</a>
    </p>
    </div>
    </body>

    le probleme comment je peut remplacer les deux variables qui se trouve dans les fonctions; par celle que j'ai dans ma base de donnée:

    j"ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     var latitude = <?php echo $latit;?>
     var longitude =  <?php echo $longit;?>
    mais ça ne marche pas; comment faire ?

  6. #6
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    j'ai donné une méthode ici
    http://www.developpez.net/forums/d10...cript-methode/

    elle est valable pour php java ruby et tout autre langage côté server

    A+JYT

  7. #7
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    j'ai pas compris comment je vais faire,???

  8. #8
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    en php tu fais un tableau dans le quel tu range tes variables php que tu veux retrouver en javascript
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $mesVariablesQueJeVeuxVoirDansJavascript = array();
     
    $mesVariablesQueJeVeuxVoirDansJavascript[maVariable1] = $maVariable1;
    $mesVariablesQueJeVeuxVoirDansJavascript[nomUtilisateur] = $nomUtilisateur;
    $mesVariablesQueJeVeuxVoirDansJavascript[resultatRequeteMySQL] = $resultatRequeteMySQL;

    puis dans ta page HTML dans les headers tu ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <html>
      <head>
        <script type="text/javascript">
          mesVariablesPhp = <?php echo json_encode($mesVariablesQueJeVeuxVoirDansJavascript ); ?>;
        </script>
      </head>
    </html>

    enfin n'importe ou dans ton code javascript tu peux voir tes variables
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function test() {
       alert(mesVariablesPhp.maVariable1);
       alert(mesVariablesPhp.nomUtilisateur);
       for (var i in mesVariablesPhp.resultatRequeteMySQL){
           alert(mesVariablesPhp.resultatRequeteMySQL[i]);
       }
    };

    A+JYT

  9. #9
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    j'ai suivi vos étapes,
    voici partie php
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $sql="Select * from localiser";
    $sql_result=mysql_query($sql,$connection1) or exit("Sql Error".mysql_error()); 	
     
    $tableau = array(
     
    'resultat' => get_object_vars($sql_result));
    mysql_close($connection1);
    partie html


    Code script : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <script type="text/javascript">
    mesVariablesPhp = <?php echo json_encode($tableau); ?>;
     
    function getCoordPosition(){
    	if(navigator.geolocation){
    	    navigator.geolocation.getCurrentPosition(function(position)){
     
    	        var latitude = mesVariablesPhp.resultat.Longitude;
     
    	        var longitude = mesVariablesPhp.resultat.Latitude;
     
     
    }}

    mais il m'affiche erreur lors de l'exécution
    Warning: get_object_vars() expects parameter 1 to be object,
    ???!!!!!

  10. #10
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    ton objet $sql_result n'est pas un ensemble de donnée mais une ressource mysql il te faut récupérer ta ligne

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $sql="Select * from localiser";
    $sql_result=mysql_query($sql,$connection1) or exit("Sql Error".mysql_error()); 
     
    $mySqlQueryResult = mysql_fetch_assoc($sql_result);
     
    $tableau = array(
       'resultat' => $mySqlQueryResult
    );
     
    mysql_close($connection1);
    ou
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $sql="Select * from localiser";
    $sql_result=mysql_query($sql,$connection1) or exit("Sql Error".mysql_error()); 	
     
    $mySqlQueryResult = mysql_fetch_object($sql_result);
     
    $tableau = array(
       'resultat' => get_object_vars($mySqlQueryResult)
    );
     
    mysql_close($connection1);

Discussions similaires

  1. Réponses: 9
    Dernier message: 11/04/2011, 12h15
  2. Récupération de la moitié des variables php
    Par gator dans le forum Langage
    Réponses: 5
    Dernier message: 19/06/2006, 12h39
  3. [MySQL] Php / Html Mettres des Variables PHP en Values sur des form
    Par Jimmy_S dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 22/03/2006, 11h18
  4. [Swishmax] Récupérer des variables php
    Par denis finch dans le forum Flash
    Réponses: 3
    Dernier message: 23/12/2005, 15h29
  5. [C#] Récupération des variables system...
    Par smyley dans le forum Windows Forms
    Réponses: 7
    Dernier message: 04/08/2005, 11h39

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