CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Exécuté un fichier PHP en boucle

santendji
santendji
Niveau 2
24 novembre 2013 à 20:29:31

Bonjour,

Comment faire pour exécuté un fichier PHP en boucle via une ligne de commande ? Je veux grosso modo, que le serveur exécute toutes les une secondes le script sans avoir besoin d'être sur la page web.

Une solution ?

Je signale que mon hébergeur est sous alwaysdata.

Torino
Torino
Niveau 79
24 novembre 2013 à 20:35:06

Regarde du côté des tâches cron. :-)

santendji
santendji
Niveau 2
24 novembre 2013 à 20:35:45

C'est a dire ?

Torino
Torino
Niveau 79
24 novembre 2013 à 20:39:04

Si tu as accès au serveur tu peux paramétrer une tâche cron pour qu'elle ouvre ta page toute seule.

Si t'as accès au serveur où est situé le site c'est assez facilement faisable.

Essaye ça http://www.xenetis.org/crontab_linux_debian_tache_planifiee.html

santendji
santendji
Niveau 2
24 novembre 2013 à 20:39:44

Enfin, sur les cron y'as pas les secondes...

Torino
Torino
Niveau 79
24 novembre 2013 à 20:43:42

Ah c'est possible, je savais pas, au temps pour moi !
Je m'en sert plus depuis pas mal de temps. :(

santendji
santendji
Niveau 2
24 novembre 2013 à 20:53:19

Harpiste

:d) Ton script me renvois une erreur "bad interpreter", et le script fait en sorte d'envoyer une requête POST toutes les secondes.

pseuuuuuuuuuudo
pseuuuuuuuuuudo
Niveau 10
24 novembre 2013 à 20:59:36

Tu as bien remplacé les points par des espaces ou des tabulations ?

Et pourquoi tu dois envoyer une requête POST toutes les secondes ? C'est quoi la finalité du script ? Car en règle générale c'est un très mauvaise idée de faire tourner un script en boucle.

santendji
santendji
Niveau 2
24 novembre 2013 à 21:03:04

pseuuuuuuuuuudo

:d) Ceux de mon script php ou le script shell ? Et j'ai besoins d'envoyé une requête POST pour des raisons personnelles.

santendji
santendji
Niveau 2
24 novembre 2013 à 21:07:06

Et comment faire en sorte que le script shell tourne toujours en boucle même en quittant le Terminal ?

pseuuuuuuuuuudo
pseuuuuuuuuuudo
Niveau 10
24 novembre 2013 à 21:11:34

Ceux que j'ai mis dans le script shell pour simuler l'indentation.
Pour que le script continue de tourner tu peux voir du côté de nohup.
Et c'est dommage que tu n'en dises pas plus car y a surement une meilleure solution.

santendji
santendji
Niveau 2
24 novembre 2013 à 21:14:46

sa me retourne une erreur "ignoring output and appending output to "nohup.out" quand j'utilise nohup...

santendji
santendji
Niveau 2
24 novembre 2013 à 21:16:41

Et en plus sa utilise ma propre connexion et non la connexion du serveur :pf:

yes-man
yes-man
Niveau 13
24 novembre 2013 à 23:19:21

Explique nous au lieu de dire raison perso, on pourra bien plus t'aider..

Pseudo supprimé
Pseudo supprimé 25 novembre 2013 à 15:01:20

La raison perso c'est pas du spam ?

deepblue
deepblue
Niveau 16
25 novembre 2013 à 17:08:40

2 solutions pour gérer la notion de temps :

1) Dans : /foo/bar/script.php

<?php
function execute() {
// ton code
}

while(true) {
execute();
shell_exec("php /foo/bar/script.php");
sleep(1);
}

Et tu lances le script php (voir plus bas)

2) Dans /foo/bar/script.sh

  1. !/bin/sh

while true; do php /foo/bar/script.php; sleep 1; done

Dans : /foo/bar/script.php

<?php
function execute() {
// ton code
}

execute();

Et tu lances le script shell (voir plus bas)

Pour lancer les commandes sans être contraint de laisser un terminal ouvert :

1) avec "screen"
$ screen -S monscript
php /foo/bar/script.php

ou

$ screen -S monscript
/foo/bar/script.sh

Tu pourras récupérer le prompt via : screen -Dr monscript

2) Utiliser nohup :

$ nohup php /foo/bar/script.php >/dev/null 2>&1 &
ou
$ nohup /foo/bar/script.sh >/dev/null 2>&1 &

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment