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 :

Executer un script php de façon périodique [EasyPHP]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut Executer un script php de façon périodique
    Bonjour,
    j'ai développer un script php de relance d'email pour nos clients.
    Je vais chercher les infos des clients via une bdd avec Easyphp.

    Je voudrais faire cette relance d'email à 2h du matin tous les jours.
    (mon script comporte des tests si date_jour > date_relance...)

    J'ai vu sur le site un exemple avec AT sous windows (attention je n'ai pas de serveur mais un pc "normal" avec EasyPhp)

    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    at 02:00 /Every:l,ma,me,j,v "C:\Program Files\PHP\php.exe -f C:\Program Files\www\relance.php"

    mais où je dois placer cela ?
    merci d'avance

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    [Pour effectuer une tache périodique en php tu as ce tutoriel http://matthieu.developpez.com/execution_periodique/

    Par ailleurs moi j'utilise un XYNTService qui est un service Windows qui s'installe sur la machine et permet de lancer des taches périodiquement. Je m'en sers pour appeler mon script php en ligne de commande ca peut donc être une autre piste (mais c'est spécifique à Windows et il faut pouvoir installer un service sur la machine)

    Car dans ton cas, je ne suis pas sur que At soit disponible sur ta machine puisque ce n'est pas une version serveur.

  3. #3
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    ok ok je vais tenter d'utiliser ton log.
    merci

  4. #4
    Membre chevronné
    Avatar de eric.pommereau
    Homme Profil pro
    Ingénieur, pôle cartographie
    Inscrit en
    Décembre 2004
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur, pôle cartographie
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2004
    Messages : 715
    Points : 1 790
    Points
    1 790
    Par défaut
    Sinon tâche planifiée sous XP / 2000:

    démarrer > accessoires >outils system > tâche planifiées

    @+

  5. #5
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    oui mais tu peux exectuer un logiciel et non une page php enfin je pense

  6. #6
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Ben tu peux surement lancer ton navigateur avec l'adresse de ton script
    ou tu peux aussi exécuter ton script en ligne de commandes avec l'interpréteur php.exe

  7. #7
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    tu as des tutos pour faire ça

  8. #8
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Tu vas sur les tâches planifiées, tu crées une nouvelle tâche, dans le programme a afficher tu choisis ton navigateur (IE ou firefox, ou autre), tu fais les réglages, horaires etc. A la fin tu demandes a afficher les propriétéesavancées de la tâche.

    Tu auras dans "Executer" quelquechose comme ca : F:\PROGRA~1\MOZILL~1\firefox.exe

    et ben juste après tu rajoutes le chemin vers ton script, exemple

    F:\PROGRA~1\MOZILL~1\firefox.exe "G:\sources\monwww\monfichierPeriodique.php"

    et le tour est joué

  9. #9
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    mais tu dois faire un lien avec EasyPhp non ? même s'il est lancé il faut passer via "Web local" pour pouvoir executer le script non ?

  10. #10
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    ben dans ce cas a la place du chemin du script tu mets son adresse par rapport a localhost tout simplement

  11. #11
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    bien vu !
    je vais tester ça

    encore merci

  12. #12
    Membre chevronné
    Avatar de eric.pommereau
    Homme Profil pro
    Ingénieur, pôle cartographie
    Inscrit en
    Décembre 2004
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur, pôle cartographie
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2004
    Messages : 715
    Points : 1 790
    Points
    1 790
    Par défaut
    Un script php est tout à fait lançable "comme un exécutable"...

    Voir ce lien: http://matthieu.developpez.com/execution_periodique/

    @+

  13. #13
    Membre averti Avatar de cyreel
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 388
    Points : 324
    Points
    324
    Par défaut
    ben lancer un script PHP est plus simple sous linux, avec les crontab. trop de gysnastique sous Windows.

    je n'avais jamais reussi a le faire mais je vais tester la solution ke vous proposez.

  14. #14
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par koopajah
    ben dans ce cas a la place du chemin du script tu mets son adresse par rapport a localhost tout simplement
    J'ai mis :

    C:\logiciel\EasyPHP1-7.2\easyphp.exe "http://xx/xxx%20-%20Relances%20emails/lancement.php"

    mais il me dit "N'a pas pu démarrer" de plus quand j'ajoute la tâche il m'affiche :

    Une erreur s'est produite lors de la tentative de définition des informations du compte de la tâche.

    merci d'avance

  15. #15
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    ca n'est pas easyphp.exe qu'il faut utiliser mais directement php.exe (qui est fourni avec easyphp mais n'est pas la meme chose).

  16. #16
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    erf j'ai toujours cette erreur sur le compte bizar bizar.
    Mais on est obligé de passer par php.exe ? sachant que easyphp tourne 24/24 sur le pc... si on appelle juste le localhost/page.php elle s'executera normalement ?
    merci

  17. #17
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Deux solutions, deja expliquées dans les messages plus haut:

    1/ Rapide, pas forcément propre mais fonctionnel :
    créer une tâche planifiée dans windows XP qui va, tous les jours à deux heures du matin, ouvrir le navigateur de la machine. Modifier cette tâche pour lui ajouter un paramètre avant que par défaut le navigateur s'ouvre sur le script à lancer périodiquement (donc adresse complète avec http://localhost/mondossier/monPeriodique.php en paramètre)

    2/ Utiliser XYNTService qui va permettre d'installer correctement un service Windows sur la machine que l'on va pouvoir paramétrer pour lancer périodiquement un script. Ce service n'est pas vraiment fait pour lancer une tache une fois par jour, le mieux pour lui est de l'utiliser pour lancer un script a intervalles réguliers (toutes les 10 minutes par exemple) et dans le script de vérifier s'il est deux heures du mat et si oui de faire un traitement.
    Ce service a un fichier de configuration qui va demander des infos, il faudra lui indiquer qu'il doit utiliser php.exe (l'interpréteur de php utilisable en ligne de commande) pour exécuter le script.

    Avantages : si tu changes la périodicité d'exécution de ton script, tu ne modifies que ton script avec les tests au début qui disent si oui ou non le script doit s'exécuter.

    Bon courage.

  18. #18
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    j'aurai tendance à prendre la premiere solution qui me parait la plus simple mais je ne sais pas pourquoi j'ai un probleme de mdp et de nom utilisateur comme je te le disais.


    tu n'as pas repondu à ma question :

    erf j'ai toujours cette erreur sur le compte bizar bizar.
    Mais on est obligé de passer par php.exe ? sachant que easyphp tourne 24/24 sur le pc... si on appelle juste le localhost/page.php elle s'executera normalement ?


    donc ça serait plutôt IE à mettre en tâche ? sinon le truc bien lourd mettre une balise meta refresh mais bon LOL

  19. #19
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Tu n'as pas du lire mes messages. J'ai dit d'utiliser ton navigateur comme tache donc oui c'est IE a mettre en tâche si tu veux aller au plus simple.

    Par ailleurs, quand tu configures la tâches ca te demande ton nom d'utilisateur et de mot de passe. Si tu n'en as pas il faut surement utiliser Administrateur et le mot de passe associé.

  20. #20
    Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    Novembre 2006
    Messages
    158
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2006
    Messages : 158
    Points : 57
    Points
    57
    Par défaut
    à le mdp c'est celui de ma session je ne pensais pas à ça ^^ !
    ça fonctionne nikel maintenant !!! merci merci !!
    par contre une autre petite question est il possible de ne pas ouvrir la fenetre de IE pour executer le script ? enfin la cacher tu vois ? histoire de ne pas fermer cette fenêtre tous les jours.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Executer un script PHP en VB?
    Par Ahweb dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 10/12/2006, 15h29
  2. Exécuter un script PHP
    Par Ed777 dans le forum Langage
    Réponses: 4
    Dernier message: 03/10/2006, 19h08
  3. Executer mes scriptes php sous linux
    Par soulbe dans le forum Linux
    Réponses: 1
    Dernier message: 17/08/2006, 18h39
  4. [Système] Execution de script php
    Par Anduriel dans le forum Langage
    Réponses: 5
    Dernier message: 24/12/2005, 15h01
  5. Réponses: 6
    Dernier message: 23/12/2005, 13h51

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