Planificateur de tâches

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Planificateur de tâches

Re: Planificateur de tâches

par enneite » 29 juil. 2011, 15:50

Sous windows, tu crées un fichier executer.bat avec les 2 lignes :

Code : Tout sélectionner

@cd c:\Program Files\php @php.exe -q c:\repertoire\fichier.php %1 %2 %3 %4
explications :

ligne 1 : tu te places dans le répertoire de PHP (optionnel si ce chemin fait parti du path de tes variables d'environnement)
ligne 2 : tu demandes à php d'executer le fichier (qui peut se trouver hors de ton répertoire htdocs)

Ensuite tu créée ta tache planifiée tu lui demande d'éxecuter le .bat

En gros ca revient à utiliser PHP en ligne de commande à la place de VB ou PERL

remarque : dans ce cas de figure, cela ne sert à rien d'utiliser les variables relatives au serveur($_GET,$_POST, etc...)

Re: Planificateur de tâches

par devlop78 » 28 juil. 2011, 02:26

Planificateur ?? Ca me fait penser à Windows ça, donc je doute que l'interpréteur php soit à l'endroit dans lequel tu l'indiques. D'ailleurs, le fait d'utiliser IE ira dans ce sens.

Je ne suis pas sûr que l'on puisse créer un executable aussi simplement sous Windows. Mais tu peux très bien, en connaissant l'adresse de php, mettre dans ton planificateur (ou un .bat) /access/vers/ton/interpreteur/php.exe "fichier.php" et si tu en as pas mal, tu peux rajouter l'executable de l'interpréteur php dans les variables (%PATH je crois) de Windows pour éviter d'entrer le chemin entier.

Bienvenue dans Windows ;)

Planificateur de tâches

par Tranber10 » 27 juil. 2011, 17:31

Bonjour,

J'essaie de faire exécuter un script automatiquement par le planificateur de tâches.
Lorsque je saisie l'url dans ie il fonctionne mais pas avec le planificateur dans lequel j'indique l'url de la page où se trouve le script.

Pouvez vous m'aider ?

Voici le code du script :

#!/usr/local/bin/php
<?php

// Variables de la page
$erreur = "";
$rappelabonnement = true;

// Fonctions de la page

// Actions de la page


$querySql = "SELECT DATE
FROM ".$table_rappelabonnement."
WHERE DATE='".date("Y-m-d")."'";
//echo $querySql."<br />";
$result = $bd->sql_query($querySql);
if ($bd->sql_numrows($result)>0)
{
while ($row = $bd->sql_fetchrow($result))
{
$rappelabonnement = false;
}
}

if ($rappelabonnement)
{
$querySql = "SELECT ".$table_clients.".EMAIL, ".$table_clients.".LANGUE
FROM ".$table_abonnement."
JOIN ".$table_clients." ON (".$table_clients.".ID_CLIENT=".$table_abonnement.".ID_CLIENT)
WHERE ".$table_abonnement.".DATE_FIN='".date("Y-m-d",time()+15*24*60*60)."'
ORDER BY EMAIL";
//echo $querySql."<br />";
$result = $bd->sql_query($querySql);
if ($bd->sql_numrows($result)>0)
{
while ($row = $bd->sql_fetchrow($result))
{
// Envoie d'un mail confirmant l'inscription à l'utilisateur
include($rep_par_rapport_racine."lang/".$row["LANGUE"].".inc.php");
include($rep_par_rapport_racine."mail/rappelabonnement.inc.php");

@mail_html($row["EMAIL"], $msgTitle, $msgTxt, $msgHtml, $mailWebmasterAbonnement);
}
}

$querySql = "INSERT INTO ".$table_rappelabonnement." (DATE) VALUES ('".date("Y-m-d")."')";
//echo $querySql."<br />";
$bd->sql_query($querySql);
}
?>

Merci