Tache cron génération fichier au mauvais endroit

Bonjour,

J'utilise une tache cron pour générer un fichier text mais celui ci au lieu de le générer à la racine de www comme le stipule mon script php

Il va carrément se mettre dans le repertoire au dessus du www avec le fichiers ovh (.bash_logout, .bash_profile etc..)

A quoi est ce du?

Cdt

Le chemin est tout simplement faux par rapport à ce qui est voulu ?

En cron, donc php CLI normalement, il n'y a pas de racine hormis celle du système de fichier donc le meilleur moyen de définir un chemin c'est par rapport au répertoire du script invoqué via la constante `DIR`.

En fait j'imagine que ton chemin est relatif et qu'en cron le répertoire courant (cwd) est ton HOME (rien à voir avec une quelconque racine), d'où le "résultat" actuel.

Peut-on voir ledit code ?

Bonjour,

Voici un bout de code du fichier à la racine du site

$f = fopen("local.txt", "w");

Je demande bien au script de générer le chisier dans le même dossier

Petite précision, cela fonctionnait parfaitement jusqu'au 23/12 c'est par hasard que j'ai vu que cela ne fonctionnait plus

Cdt

> Je demande bien au script de générer le chisier dans le même dossier

Non, là, tu demandes à ce qu'il soit créé dans le répertoire courant (dont tu peux prendre connaissance par la fonction `getcwd` - ou tout équivalent comme `realpath('.')`) qui est (et a pu changer suivant comment OVH exécute cron ou php depuis cron - chose possible mais je ne saurais te le dire) visiblement ton HOME.

Si tu veux que c e soit le même répertoire que ton script, tu dois écrire `$f = fopen(DIR . "/local.txt", "w");` à moins que tu ne redéfinisses toi-même avant le répertoire courant par un appel à `chdir` (`chdir(DIR);`).

ok c'est plus clair je fais les test.

Merci et bon réveillon :slight_smile: