2017-05-10 3 views
2

J'ai un script php en racine de mon site. J'ai ajouté un cronjob dans mon cpanel. Il travaille avec des opérations de base de données de base comme indiqué ci-dessous:Cpanel cronjob ne fonctionne pas

<?php 
require_once "classes/class.database.php"; 
$db = new database; 
$db->connectToDB(); 
$data = date("Y/m/d H:i"); 
$res = $db->insertRow("cron",array("datetime"),array($data)); 
echo $res; 
?> 

Dans le même fichier j'ai remplacé ces codes avec les codes ci-dessous qui sont des codes réels que je veux planifier, mais il ne fonctionne pas. Si je saisis manuellement, cela fonctionne mais de cette façon ça ne marche pas.

Codes réel:

<?php 
require_once "/home/domain/subdomain.domain.com/share/share.php"; 
$share = new share; 
$share->sharePosts(); 
?> 

Je ne pense pas qu'il ya une erreur dans mon code, car il fonctionne manuellement mais je veux être sûr. Puis-je enregistrer la sortie de ce fichier? Merci d'avance.

+1

Activer le signalement d'erreurs, 'error_reporting (E_ALL)' – Akintunde007

+1

Vérifiez si le require fonctionne: http://stackoverflow.com/questions/5560751/php-check-if-require-once-content-is-empty – mayersdesign

+0

quand je fais simplement écho à quelque chose, il m'envoie la sortie mais s'il y a une erreur, ce n'est pas le cas. –

Répondre

0

J'ai finalement résolu le problème. J'ai activé la journalisation des erreurs avec les codes ci-dessous. J'ai essayé de m'envoyer un mail (c'est la propriété de cpanels) et je fais juste écho à quelque chose. Mail est venu avec succès. Ensuite, j'ai écrit un mauvais code (j'ai écrit un mauvais chemin à "required_once"), quand j'exécute manuellement, donne une erreur fatale. Erreurs fatales non envoyées. Après que j'ai remplacé "require_once" par "include" pour éviter les erreurs fatales, alors il a remarqué une erreur mais cette fois il m'a été envoyé. L'erreur était "Aucun fichier de ce type". Ensuite, j'ai essayé le chemin "/home/domain.com/yourcron.php" et aucune erreur. En conclusion, tous les chemins doivent ressembler à "/home/domain.com/yourcron.php".