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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Exécuter script PHP en tâche de fond


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Exécuter script PHP en tâche de fond
    Bonjour,

    je voulais savoir si quelqu'un a une idee pour resoudre mon probleme.
    Je m'explique, je voudrai a la fin d'un upload sur un site faire un traitement sur le fichier (video) uploade a l'aide de ffmpeg.
    Par contre le traitement est assez long et plusieurs process a faire a la suite (encoder en flv, recuperer image de debut de la video, ajouter metas avec flvtool2, mettre a jour bdd, ...).
    Donc pour eviter que l'internaute soit bloque sur la page d upload, je voudrai donc que lorsque celui-ci est termine, recharger la page et que l'internaute puisse naviguer sur le site.
    Dans un meme temps, lancer un script php en "tache de fond" avec la commande du style exec("/usr/bin/php monscript.php > /dev/null &") par exemple, mais ne suis pas sur d utiliser la bonne methode.
    Le probleme est que j'ai besoin de faire passer dans ce script en tache de fond des params de mon fichier parent (comme userid, filename, etc...)
    Quelqu'un saurait-il si c'est faisable et si oui comment? Je cherche depuis un moment mais ne vois pas trop comment faire... Peut etre ajax...
    Mon site est heberge en test chez moi pour l instant sur server ubuntu dapper drake php4 mysql5.
    Si vous avez des exemples ce serait vraiment bienvenu.
    Merci d'avance pour votre aide.

  2. #2
    Inscrit

    Profil pro
    H4X0|2 @ YourLabs Business Service
    Inscrit en
    Octobre 2006
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : H4X0|2 @ YourLabs Business Service
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 657
    Points : 909
    Points
    909
    Par défaut
    Pour executer une script php en tache de fond :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/php script.php &
    Ca marche aussi simplement que cela chez moi ...
    YourLabs Business Service: Conseil en Strategie Numerique / Club de 1337 Haxors depuis 2012 / Marque de Logiciels Libres / Blog / GitHub /
    Citation Envoyé par C.A.R. Hoare, The 1980 ACM Turing Award Lecture
    There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies.”
    More great quotes - RIP Uriel

  3. #3
    Membre régulier
    Avatar de SOAD08
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 101
    Points : 108
    Points
    108
    Par défaut
    Pour ce qui est de la récuperation des variables, tu peux les placer dans un fichier mais c'est pas très propre.
    www.cppreference.com ==> A lire pour vos problèmes touchant à la STL
    www.php.net ==> A lire avant de demander le fonctionnement d'une fonction PHP

    Alliance developpez Muzgo

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Pour la recuperation des variables, je pensai ajouter un flag dans la table ou sont inserees les datas et en lancant le script en tache de fond recup la ligne avec le flag a 0 et faire le traitement puis changer l etat du flag lorsque tout s est bien deroule. Vous en pensez quoi?
    Le probleme c est si plusieurs upload se terminent en meme temps, je ne sais pas trop comment cela peut reagir...

  5. #5
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 021
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 021
    Points : 2 278
    Points
    2 278
    Par défaut
    Salut,
    pour passer des arguments à ton script tu peux faire ceci :

    php script.php etert tutyuty

    et dans ton script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $argv[1]; // donne etert 
    echo $argv[2]; // donne tutyuty
    Donc un truc du style avec le exec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec("/usr/bin/php monscript.php ".$var1." ".$var2." &");
    Bye
    Vive les roues en pierre

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Merci Djakisback c exactement ce que je recherchais, cela fonctionne parfaitement en mettant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec("/usr/bin/php monscript.php ".$var1." ".$var2." > /dev/null &")
    Sans > /dev/null, j ai toujours le sablier qui est active.

    Encore merci

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

Discussions similaires

  1. [MySQL] Optimisation de scripts PHP/MySQL
    Par DgG dans le forum PHP & Base de données
    Réponses: 368
    Dernier message: 20/11/2013, 18h59
  2. Quel est le meilleur script PHP de portail (CMS) ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 187
    Dernier message: 18/10/2012, 07h45
  3. Exécution script php
    Par devmat dans le forum Linux
    Réponses: 11
    Dernier message: 22/04/2007, 11h14
  4. Pb d'execution de requete avec un script php
    Par ythierrin dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/08/2003, 14h34

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