Tâche cron

Bonjour à tous,
Il m'arrive un truc assez mystérieux. Sur un plugin de recensement de biodiversité je fais une tache cron pour mettre une colonne à jour dans une table secondaire.
Ce fichier qui s'appelle recensement_cron.php est bien placé dans un dossier nommé genie. Il est bien déclaré dans le paquet sous recensement_pipelines.php et j'utilise bien a fonction adéquate.
pourtant quand je lance la tâche, SPIP m'affiche "Erreur.. Fichier recensement_cron inexistant
Dedans et pour l'instant il n'y a que ça:
if (!defined("_ECRIRE_INC_VERSION")) return;

function recensement_cron($time) {
$res =sql_allfetsel('id_recensement', 'spip_recensements');
$id_recensement= $res['id_recensement'];
$mesure = sql_allfetsel (array('id_espece', 'date_revu'), 'spip_recensements_revus');
$id_espece= $mesure['id_espece'];
$date_revu= $mesure['date_revu'];
if ($id_recensement != $id_espece)
{
sql_insertq('spip_recensements_revus', array('revu' => '0','population' => '0' , 'id_espece' => $id_recensement));
}

Vous avez une idée?

Merci d'avance
Bernard

Le 22/07/2019 à 15:29, Bernard Blazin a écrit :

Il m'arrive un truc assez mystérieux. Sur un plugin de recensement de biodiversité je fais une tache cron pour mettre une colonne à jour dans une table secondaire.
Ce fichier qui s'appelle recensement_cron.php est bien placé dans un dossier nommé genie. Il est bien déclaré dans le paquet sous recensement_pipelines.php et j'utilise bien a fonction adéquate.

Cette description est approximative.
Pour une telle question il faudrait de la précision et de l'exactitude,
de même que ta déclaration dans paquet.xml doit être précise et exacte.

JLuc

pourtant quand je lance la tâche, SPIP m'affiche "Erreur.. Fichier recensement_cron inexistant
Dedans et pour l'instant il n'y a que ça:
if (!defined("_ECRIRE_INC_VERSION")) return;

function recensement_cron($time) {
$res =sql_allfetsel('id_recensement', 'spip_recensements');
$id_recensement= $res['id_recensement'];
$mesure = sql_allfetsel (array('id_espece', 'date_revu'), 'spip_recensements_revus');
$id_espece= $mesure['id_espece'];
$date_revu= $mesure['date_revu'];
if ($id_recensement != $id_espece)
{
sql_insertq('spip_recensements_revus', array('revu' => '0','population' => '0' , 'id_espece' => $id_recensement));
}

Vous avez une idée?

Merci d'avance
Bernard

Le 22/07/2019 à 15:40, JLuc a écrit :

Le 22/07/2019 à 15:29, Bernard Blazin a écrit :

Il m'arrive un truc assez mystérieux. Sur un plugin de recensement de biodiversité je fais une tache cron pour mettre une colonne à jour dans une table secondaire.
Ce fichier qui s'appelle recensement_cron.php est bien placé dans un dossier nommé genie. Il est bien déclaré dans le paquet sous recensement_pipelines.php et j'utilise bien a fonction adéquate.

Cette description est approximative.
Pour une telle question il faudrait de la précision et de l'exactitude,
de même que ta déclaration dans paquet.xml doit être précise et exacte.

JLuc

Il me met en fait "fichier recensement_cron introuvable". Dans mon paquet xml j'ai déclaré ainsi:
<pipeline nom="taches_generales_cron" inclure="recensement_pipelines.php" />
dans recensement_pipelines comme suit:
function recensement_taches_generales_cron($taches) {
$taches['recensement_cron'] = 72*12*3600;
return $taches;
}
et dans génie le fichier recensement_cron.php comme décrit auparavant..
Je ne vois pas ce que je peux ajouter comme précisions.. Mais merci tout de même ;
Aucun log ne parle.

Bernard

Le 22/07/2019 à 15:29, Bernard Blazin a écrit :

function recensement_cron($time)

Tu peux essayer de renommer ta fonction comme suit :

function genie_recensement_cron($time){}

Le 23/07/2019 à 10:04, Chourak a écrit :

Le 22/07/2019 à 15:29, Bernard Blazin a écrit :

function recensement_cron($time)

Tu peux essayer de renommer ta fonction comme suit :

function genie_recensement_cron($time){}

Oui effectivement, hier soir en comparant sur d'autres plugins j'ai vu mon erreur.
Merci de t'être penché sur mon cas :slight_smile: