Taches cron, php et connexion à la BD

WRInaute passionné
Bonjour à tous,

Je dévellope un site de e-commerce avec une base de données MySQL, j'ai une url de dévellopement : devpmt.monsite.com et une url de production : www.monsite.com. Et deux BD : dev et online, correspondantes aux url.

J'utilise PLESK pour gérer une CRON tab et lancer des scripts PHP pour par exemple vider les répertoires temporaires. Je gère les connexions à la base en récupérent la valeur de SERVER_NAME :

Code:
si SERVER_NAME == www.monsite.com alors
      connexion à la base "online"
sinon
      connexion à la base "dev"
finsi

Le problème est que ma crontab ne lancent pas les scripts php en passant par l'url, mais de cette manière :
Code:
php /home/httpd/vhosts/monsite.com/httpdocs/taches_cron/vider_rep_session.php

Il me faut donc utiliser une autre commande pour détecter le chemin linux et je n'arrive pas à trouver de fonction php ou de commande linux me permettant d'obtenir le chemin du fichier courant.

Auriez-vous une idée ?

Merci d'avance
 
WRInaute passionné
Pour ça utilise ça :
dirname(__FILE__)

(par exemple include_once(dirname(__FILE__)."/../_class/class.Cache.php");
)

Sinon dans un fichier de config en php tu mets les information de connexion à ta base, avec un nom différent pour le dev. et le www.
 
WRInaute passionné
malheureusement dirname ne retourne que le nom du dossier et pas le chemin complet, dans mon cas, il ne me renverrais que : "taches_cron", ce qui ne me permettra pas de différencier mes deux virtual hosts.

Code:
php /home/httpd/vhosts/monsite.com/httpdocs/taches_cron/vider_rep_session.php

Ken a réalisé deux fichiers de configuration différents(j'y avais déjà pensé !), c'est pas l'idéal ! Je voudrais le réaliser de manière dynamique.

Merci ken meme de ton aide. :p
 
Discussions similaires
Haut