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 :

Interruption d'un script javascript à distance


Sujet :

JavaScript

  1. #1
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut Interruption d'un script javascript à distance
    Bonjour,

    j'ai une page ( html ou php ) avec un script en javascript qui dure environ 10 minutes ( style de barre de progression ) .

    Du coté administrateur, je souhaiterai interrompre ce script a distance quand je le souhaite sans que l'utilisateur ne fasse de manipulation.

    Est ce possible ? si oui comment faire ?
    Sinon merci de me dire avec quel langage je pourrais faire qqchose comme ça ?

    Merci par avance

  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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    a part un ajax dans un setInterval qui modifierait un boolean à condition que ton script qui dure 10 minutes soit lui même dans une boucle et que tu puisses y teste le boolenan
    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
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    merci pour ta solution .

    Mais ca donne quoi en code ? parceque la j'ai pas bien compris.

  4. #4
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    le prérequis est que ta fonction de départ contienne une boucle de façon à pouvoir interroger une variable boolean
    si le bool = true on continue , si le bool = false on stoppe la fonction

    en parallèle dans un setInterval tu fais une requete ajax vers un fichier sur le serveur qui te retourner true ou false.
    sur le succes tu attribue le retoure true ou false à ton boolean qui bloquera ou non la fonction
    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 !

  5. #5
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    merci pour ces inofrmation

    mais je te donne mon code
    Que puis je faire avec ca ....

    merci beaucoup de ton aide


    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
    var maxprogress = 100;   // total à atteindre
    var actualprogress = 1;  // valeur courante
    var itv = 0;  // id pour setinterval
    function prog(){
      if(actualprogress >= maxprogress) {
        clearInterval(itv);
        return;
      }
      var progressnum = document.getElementById("progressnum");
      var indicator = document.getElementById("indicator");
      actualprogress += 0.03;	
      indicator.style.width= actualprogress * 5 + "px";
      progressnum.innerHTML = Math.round(actualprogress)  + "%";
      if(actualprogress == maxprogress) clearInterval(itv);   
    }

  6. #6
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    je pense que tu peux utiliser le test

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(actualprogress >= maxprogress)
    et rajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(actualprogress >= maxprogress or bool)
    car cela semble quitter ta fonction
    il te suffit ensuite d'aller cherche le bool an ajax
    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 !

  7. #7
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    merci pour cette reponse mais je ne connais pas l'ajax
    je ne sais meme pas comment le mettre en route

    en parallèle dans un setInterval tu fais une requete ajax vers un fichier sur le serveur qui te retourner true ou false.
    comment mettre en place ce setinterval ?

    je fais des recherche depuis que tu m'en as parlé mais apparemment ca ne s'apprend pas comme ca.

    peux tu me donner qq conseil pour mettre en route cette simple page avec un controle a distance de cette barre de progression ?

  8. #8
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    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 !

  9. #9
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    merci pour ce tuto

    mais apparement il faut un serveur capable de lire de l'AJAX

    et moi je n'ai que un serveur apache php / mysql

    aussi, j'ai eu une idée a savoir :
    cote administrateur lorsque je veux arreter la tache, je crée un fichier ou j'assigne une valeur dans un fichier
    et coté client, je met une condition IF fichier existe ou if valeur dans le fichier = 1 ( que j'aurai assigné prealablement ) dans la boucle et si TRUE alors je stop la boucle globale.

    mais est ce possible de verifier l'existence d'un fichier en javascript ? ou d'ouvrir un fichier et de verifier les infos dedans ?

    merci

  10. #10
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut


    heu non n'importe quel serveur web fait l'affaire le but dans ton cas étant juste de retourner true ou false

    A toi de faire une page php par exemple qui te retourne juste 0 ou 1 puis de pointer dessus en ajax ...
    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 !

  11. #11
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    peux tu m'indiquer la marche a suivre si ça ne te derange pas trop

    Merci par avance

    j'ai mon fichier css, le fichier HTML, et une page administrateur avec un bouton stopper la barre de progression.
    je dois placer quoi ? et ou ?

  12. #12
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    commence par faire une page php qui te retourne juste 0 ou 1

    0 = interruption de la fonction
    1 = non interruption de la fonction

    à la limite ça peut tre juste un fichier .php en utf8 sans BOM avec dedans juste 0 ou 1
    si le fichier contient 0 la fonction s'arretera
    si le fichier contient 1 elle ire jusqu'a son terme

    Ensuite il te faudra au debut de la fonction principale lancer un ajax dans un setInterval pour aller lire ce fichier
    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 !

  13. #13
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    commence par faire une page php qui te retourne juste 0 ou 1

    0 = interruption de la fonction
    1 = non interruption de la fonction

    à la limite ça peut tre juste un fichier .php en utf8 sans BOM avec dedans juste 0 ou 1
    si le fichier contient 0 la fonction s'arretera
    si le fichier contient 1 elle ire jusqu'a son terme
    Ca y est ça c fait.

    Ensuite il te faudra au debut de la fonction principale lancer un ajax dans un setInterval pour aller lire ce fichier
    puis au debut de ma fonction principale

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function prog(){
      if(actualprogress >= maxprogress) {
        clearInterval(itv);
        return;
      }

    j'insere quoi ? et comment ?

  14. #14
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    il te faut maintenant créer une fonction ajax qui va aller lire ton fichier avec 0 ou 1 ...
    inspire toi du tuto et pas exemple lors du retour de l'ajax fais un alert du responseText pour tester que tu reçois bien 0 ou 1
    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 !

  15. #15
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    il faut mettre qqcj-hose de particulier dans le fichier html qui precise que c de l'ajax ?

    ou <script language="javascript"> suffit ?

  16. #16
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    Desolé mais je suis perdu

    aide moi encore un peu et dis moi quoi ecrire dans quel fichier sans vouloir abuser

  17. #17
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    ajax c'est juste du javascript ...

    colle le script d'appel qui pointe vers l'url de ton fichier php qui contient 0 ou 1
    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 !

  18. #18
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Août 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2014
    Messages : 13
    Par défaut
    Salut

    J'ai passé ma nuit sur le projet.
    J'ai presque fini mais je ne comprend pas comment recuperer la valeur de mon fichier testdevaleur.php
    ce fichier il y a ecrit dedans juste 1 ou 0

    mais comment recuperer la valeur pour en faire un test if = 0 ou if = 1

  19. #19
    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 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 658
    Billets dans le blog
    1
    Par défaut
    Lors de retour de la requete ajax ...

    As tu bien un retour dans la console ?
    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 !

  20. #20
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    SpaceFrog, pour de l'AJAX polling il vaut mieux faire du long polling que de passer par setInterval ou setTimeout. Il y a ce gist qui compare trois solutions : https://gist.github.com/jasdeepkhalsa/4353139

    Côté serveur, on peut maintenir la connexion ouverte aussi longtemps que nécessaire, et balancer la réponse quand on veut interrompre le script.

    Parmi les autres solutions possibles, on peut utiliser les Server Sent Events ou encore les Web Sockets. Mais s'il n'y a qu'un seul signal du serveur, l'AJAX polling est sûrement plus approprié.

Discussions similaires

  1. Lancer un script SQL à distance
    Par Michel38 dans le forum MS SQL Server
    Réponses: 13
    Dernier message: 29/03/2006, 09h33
  2. Probleme avec un script javascript->php
    Par leluis dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/03/2006, 15h32
  3. aide pour un script javascript
    Par speedylol dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 22/03/2006, 14h28
  4. utiliser un recordset dans un script javascript
    Par insect INC dans le forum ASP
    Réponses: 4
    Dernier message: 10/10/2005, 19h29
  5. [PHP-JS] Php dans un script javascript
    Par nebule dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 30/11/2004, 10h38

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