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

Web Perl Discussion :

[web] Lancer un script en arrière plan


Sujet :

Web Perl

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 66
    Points
    66
    Par défaut [web] Lancer un script en arrière plan
    P'tit probleme,
    J'ai un script perl(une interface) qui utilise le CGI dans lequel je cherche à lancer un autre script perl(sans CGI).

    Je le lance avec l'evenement onclick d'un bouton javascript qui apel une fonction qui fait une redirection vers mon second script.
    Le probleme est qd mon second script se termine , l'interface de mon premier script disparait pour m'afficher une erreur.

    Connaissez vous un moyen de lancer un script en arriere plan, ou vers une target non visible??? Ou autre chose.
    mercciiiiiii
    << Qui pisse face au vent......se rince les dents >>

    ***{:-} Kenavo!!!!

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 167
    Points : 120
    Points
    120
    Par défaut
    plusieurs moyens de faire:

    system(perl nom_du_script_en_arriere_plan.pl);

    lancement d'un processus fils, après exécution le script père reprend!


    sinon
    system(perl nom.pl &);
    lance le fils en tache de fond, mais on en perd le contrôle


    sinon
    exec(perl nom.pl &);
    lance le fils, mais plus rien (sauf die(), warn() ou exit() ne peut s'exécuter sur le père



    Conclusion
    system() voyage aller-retour
    exec() aller simple

    La naissance est le seul fruit du hasard

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 66
    Points
    66
    Par défaut
    En effet avec system() ca marche bien sauf que je n'ai plus la main sur le script pere le temps le processus pere est entrain de s'executer.

    Et je voudrai justement lancer le processus fils sans attendre qu'il finisse de s'executer.
    << Qui pisse face au vent......se rince les dents >>

    ***{:-} Kenavo!!!!

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 66
    Points
    66
    Par défaut C'est good
    En fait je n'est pas reussit avec system() car je ne garde pas le controle donc ce que j'ai fai:
    j'ai ultilisé un bouton submit qui appel mon script dans une frame invisible.
    je garde donc le controle sur ma frame pere et j'execute en arriere plan sur la frame invisible mon script fils quand celui se termine il n'y a donc aucune incidence sur l'interface. Merci quand mm!!
    << Qui pisse face au vent......se rince les dents >>

    ***{:-} Kenavo!!!!

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    167
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 167
    Points : 120
    Points
    120
    Par défaut
    Bah si tu veux lancer le script fils et que le script père continu a s'exécuter, a la fin de system il faut placer un & (même effet que sous linux) system(perl test.pl &);
    Rem: system peut prendre également d'autres types de commandes
    La naissance est le seul fruit du hasard

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

Discussions similaires

  1. lancer un script en root depuis une page web
    Par Marty69 dans le forum Administration système
    Réponses: 2
    Dernier message: 23/09/2014, 07h59
  2. Réponses: 1
    Dernier message: 01/03/2006, 11h27
  3. [web] lancer page HTML depuis un script perl
    Par lilou0210 dans le forum Web
    Réponses: 7
    Dernier message: 05/11/2004, 16h04
  4. Réponses: 13
    Dernier message: 01/10/2004, 14h03
  5. [web] Lancer un script CGI
    Par Calou20 dans le forum Web
    Réponses: 10
    Dernier message: 01/03/2004, 16h48

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