[CRON OVH] Est-ce que ce lien relatif va faire fonctionner le CRON ?

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par beegees, 1 Janvier 2017.

Tags:
  1. beegees
    beegees Nouveau WRInaute
    Inscrit:
    20 Août 2016
    Messages:
    14
    J'aime reçus:
    0
    Bonjour tout le monde et bonne année,

    J'ai une tâche planifiée OVH (CRON) qui fonctionne avec ce code minimaliste :

    Code:
    <?php
    // the message
    $msg = "Le CRON fonctionne !!! un peu du spam pour la bonne cause BONNE ANNEE !!!!";
    
    // send email
    mail("monmail@gmail.com","COOOOOOOLLLLL",$msg);
    ?> 
    
    Cela envoie un mail toutes les heures 50 au destinataire.

    Je voudrais rendre plus compliqué ce code afin d'aller dans une bd prendre des informations et les envoyer à plusieurs destinataires.

    J'ai lu qu'on devait utiliser des chemins absolus et non relatifs, voici ma question :

    Si j'ai ceci dans mon code, est-ce que ça va fonctionner ?

    Code:
    <?php
        require_once("vendor/autoload.php");
        require_once ('config/ConnexionDB.php');
    
    Je confirme que quand j'encode l'url du script dans mon navigateur, je reçois les mails (c'est donc un test manuel).

    Est-ce que ça va fonctionner automatiquement ?

    Merci pour l'aide.

    bee
     
  2. niap
    niap WRInaute discret
    Inscrit:
    17 Octobre 2009
    Messages:
    138
    J'aime reçus:
    0
    Ahh les crons sous OVH... une joie sans cesse renouvellée.
    Il faut utiliser des chemins absolus.
    Et il faut que la version PHP du CRON soit la même que la version globale de l'hébergement.
     
  3. beegees
    beegees Nouveau WRInaute
    Inscrit:
    20 Août 2016
    Messages:
    14
    J'aime reçus:
    0
    Merci pour ta réponse et bonne année.

    Donc, mon chemin n'est pas ok :
    Code:
    <?php
        require_once("vendor/autoload.php");
        require_once ('config/ConnexionDB.php');
    
    Comment connaître la version PHP du CRON ?

    Pour la version php globale, c'est la 7.0 :

    [​IMG]

    Si je regarde mes logs, je vois ceci :

    J'en déduis que je dois utiliser ce chemin ? :

    /usr/local/php7.0/bin/php /homez.2193/likemywora/./www/lmw_dev/ristourne.php


    ou

    Code:
    require_once("www/lmw_dev/vendor/autoload.php");
        require_once ('www/lmw_dev/config/ConnexionDB.php');
    
    Je ne comprends pas bien le /./ juste avant le www

    Merci encore pour ton aide.

    bee
     
  4. niap
    niap WRInaute discret
    Inscrit:
    17 Octobre 2009
    Messages:
    138
    J'aime reçus:
    0
    Pour le chemin tu peux le récupérer avec dirname
    Code:
    $path = dirname(__FILE__).'/';
    echo $path;
    La version de PHP utilisé par le cron est défini dans Ajouter une planification sous language.
     
  5. beegees
    beegees Nouveau WRInaute
    Inscrit:
    20 Août 2016
    Messages:
    14
    J'aime reçus:
    0
    Merci beaucoup pour ta réponse (surtout un jour férié).

    Mon path donne ceci :

    J'ai donc mis ceci :

    Code:
    require_once("/home/likemywora/www/lmw_dev/vendor/autoload.php");
    require_once ('/home/likemywora/www/lmw_dev/config/ConnexionDB.php');
    
    Je te tiens au courant si ça fonctionne ou pas.

    Encore merci.
     
  6. beegees
    beegees Nouveau WRInaute
    Inscrit:
    20 Août 2016
    Messages:
    14
    J'aime reçus:
    0
    Voilà, le problème semble réglé, et ce, grâce à toi.

    Je t'en remercie mille fois !!!!

    Donc, pour ceux qui ont le même problème :

    faire ce qui est indiqué ci-dessus, un echo de __DIR__ et l'ajouter à vos différents include ou requires.

    Il faut également utiliser la même version php pour le cron et la version PHP.

    On peut directement tester le cron en y metttant l'url dans la barre du navigateur.

    Encore merci pour tout.
     
Chargement...
Similar Threads - [CRON OVH] lien Forum Date
[OVH] Accès SQL serveur dédié depuis un site mutualisé ? Développement d'un site Web ou d'une appli mobile 26 Février 2012