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 :

Interactions Javascript/PHP/Ajax en changeant une variable !


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Homme Profil pro
    .
    Inscrit en
    Septembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Septembre 2018
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Interactions Javascript/PHP/Ajax en changeant une variable !
    Bonjour,

    Je vous expose ma problématique malgré plusieurs soirées de recherches infructueuses. Je dispose d’un code afin de piloter un robot géré par un Raspberry. Le code est construit à l’aide du PhP, de l’ajax et du javascript. J’espère donc avoir posté sur le bon forum, sinon je m’en excuse

    Actuellement, mon code fonctionne correctement. C’est lorsque je change le nom d’une des variables que cela ne fonctionne plus !

    Pour résumer, une page PHP est affichée sur mon navigateur avec différents boutons, différentes images. Quand je clique sur l’un de ces éléments, une action doit être lancée.

    Voici quelques éléments :

    Dans le HEAD de ma page PHP (pour info), j’ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script language="javascript" src="js/keyboard.js"></script>
    Dans le BODY de ma page index.php, un des éléments est une image à cliquer afin de rebooter le raspberry. Le code associé est :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="Images/restart.png" width="50" height="50" alt="" Ontouchstart = "touchAvailable=true; reboot()" OnMousedown = "reboot()" />

    Ainsi, en cliquant sur cette image, cela envoie vers le fichier keyboard.js, afin d’aller chercher la fonction reboot(). Voici un extrait du keyboard.js en question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function reboot (_event_){
    	$.ajax({
    		type: "POST",
    		url: "./action.php?action=reboot",
    		success: function(r){
    		}});		
    }
    Ainsi à ce moment-là, c’est la page action.php qui est chargée, avec la variable reboot afin d’aller effectuer l’opération correspondante. En voici le contenu :
    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
    <?php
     
    require_once('common.php');
    $result['state']  = 0;
    $result['error']  = '';
     
    switch($_['action']){
     
    	case 'reboot':
    		exec('sudo reboot');
    	break;		
    }
     
    ?>

    Aujourd’hui, cela fonctionne !
    Ce qui me gêne, c’est que si je change le terme reboot, et que je veux le remplacer par reb par exemple, cela ne fonctionne plus !
    Je comprendrais bien qu’il y ait un dysfonctionnement si reb n’était pas écrit de manière strictement identique dans les 3 fichiers, mais ce n’est pas le cas !
    Rien de fait à référence à reboot dans le fichier common.php, donc je n'ai pas jugé utile de le mettre sur ce post.

    Avez-vous une idée d’où cela peut provenir ?

    Merci à vous et bonne soirée !

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 670
    Points
    66 670
    Billets dans le blog
    1
    Par défaut
    Ce qui me gêne, c’est que si je change le terme reboot, et que je veux le remplacer par reb par exemple, cela ne fonctionne plus !
    où ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Candidat au Club
    Homme Profil pro
    .
    Inscrit en
    Septembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Septembre 2018
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Le problème est résolu.
    C'est sans doute un problème de cache du navigateur. En effet, quand je fais les modifications dans CHROME, sur un onglet classique, alors il ne se passe rien, d'où ma question sur ce forum.
    Quand j'ouvre un onglet "navigation privée" dans CHROME (qui n'enregistre rien après passage et qui donc n'a pas de cache quand je l'ouvre), cela fonctionne immédiatement.
    A+

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 09/07/2014, 12h13
  2. Réponses: 7
    Dernier message: 05/01/2008, 19h37
  3. [AJAX] Affichage d'une variable au fils de l'eau (flux PHP)
    Par Jonathan.b dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/10/2007, 13h25
  4. Réponses: 2
    Dernier message: 28/06/2006, 15h56
  5. [PHP-JS] passage d'une variable php à une fonction javascript
    Par pimpmyride dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/04/2006, 16h17

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