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

jQuery Discussion :

Lancer un script php plusieurs fois


Sujet :

jQuery

  1. #1
    Candidat au Club
    Homme Profil pro
    Passioné
    Inscrit en
    Octobre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Passioné

    Informations forums :
    Inscription : Octobre 2017
    Messages : 2
    Par défaut Lancer un script php plusieurs fois
    Bonjour.

    Je souhaite envoyer un volumineux mailing (bientôt 800 e-mails).

    Pour le moment, ça fonctionne très bien via un script php lancé à l'aide de la fonction jquery ajax(). J'envoie 700 mails sans aucun problèmes en 30 minutes. Mais, dans peu de temps, quand une centaine de nouveaux souscripteurs se seront enregistré, le fichier php n'aura plus le temps d'envoyer tous les mails durant son temps d’exécution et les derniers souscripteurs de la liste vont tomber à la trappe. je n'ai pas non plus envie de pousser les réglages à fond et autoriser un script php qui bugerait subitement à tourner des heures durant avant qu'il ne soit arrêté par le système.

    Donc, je me demandais si JQuery ajax() pouvait lancer mon script d'envoi envoimail.php deux fois de suite. Du côté php, c'est OK : envoimail.php doit juste recevoir le message de Jquery "c'est ton premier tour" pour qu'il envoie la première moitié des mails et recevoir le message "c'est ton deuxième tour" pour qu'il envoie l'autre moitié au deuxième lancement. Ce qui donnerait le temps au serveur d'envoyer deux fois plus de mails, mais en deux fois.

    C'est au niveau de Jquery que j'hésite. Je pense à un truc du genre :

    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
     
    $("#bouton").click(function(){
     
        $.ajax({
     
           url : 'envoimail.php',
     
           type : 'GET',
     
           data : 'envoi=0';    //signaler le premier envoi
     
     
           complete : function(){
     
               $.ajax({
     
                  url : 'envoimail.php',
     
                  type : 'GET',
     
                  data : 'envoi=1'; //signaler le deuxième envoi
     
                  success : function(code_html, statut){ 
     
                  $(code_html).appendTo("#commentaires");
     
           }
     
     
           }
     
     
        });
     
     
    });
    Une fois que ajax() est complete, il renvoie un nouvel ajax() avec une nouvelle valeur lui disant que c'est son deuxième tour. Et si succes il envoie le message que le script à bien marché "C'est enovoyé!!".

    A mon avis ça peut marcher. Mais quelque-chose me dit qu'il y a un truc plus élégant (comme on dit au pays).
    N'y a-t-il pas truc un peu plus approprié plus propre (comme on dit dans le jargon) ?

    Merci de votre lecture.

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 515
    Par défaut
    bonjour,
    il y'a aussi $.done() que tu peux utiliser aprés $.ajax(), genre :
    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
     
     
    $("#bouton").click(function(){
     
        $.ajax({
     
           url : 'envoimail.php',
     
           type : 'GET',
     
           data : 'envoi=0',    //signaler le premier envoi
     
          success:function(code_html, statut){$(code_html).appendTo("#commentaires");}
     
        }).done( function(){
     
               $.ajax({
     
                  url : 'envoimail.php',
     
                  type : 'GET',
     
                  data : 'envoi=1'; //signaler le deuxième envoi
     
                  success : function(code_html, statut){ 
     
                  $(code_html).appendTo("#commentaires");
     
           }
     
     
           });
     
     
    });

  3. #3
    Membre confirmé

    Inscrit en
    Octobre 2010
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 169
    Par défaut re php
    Bonjour,

    Ne pourrai tu pas modifier ton script pour faire des tranches de 700prs ?

  4. #4
    Candidat au Club
    Homme Profil pro
    Passioné
    Inscrit en
    Octobre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Passioné

    Informations forums :
    Inscription : Octobre 2017
    Messages : 2
    Par défaut
    J'y ai déjà pensé.
    C'est pour ça que je demande à l'ajax de la page de lancement de lancer le script php deux fois.

    Maintenant, s'il y a une solution pour relancer le script php à partir du php, je la prends bien-sûr.
    Mais le script peut-il s'auto-re-lancer (une fois seulement) ?

    PS : Au passage, merci Toufik83 pour ta réponse.

Discussions similaires

  1. [Ajax] lancer un script php en php (4.x)
    Par zan001 dans le forum Langage
    Réponses: 1
    Dernier message: 08/11/2006, 12h49
  2. Lancer un script Javascript une fois un script PHP terminé
    Par kingmandrax dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 15
    Dernier message: 30/09/2006, 17h18
  3. [AJAX] Lancer un script PHP au passage de la souris !
    Par DiabolO dans le forum Général JavaScript
    Réponses: 26
    Dernier message: 31/08/2006, 23h44
  4. Réponses: 1
    Dernier message: 01/03/2006, 11h27
  5. Réponses: 4
    Dernier message: 14/12/2005, 12h16

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