Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

J'ai installé DSM 6, en mode trompe la mort, et badaboom:

Dans mon crontab, j'ai une ligne devant executer un script PHP toutes les minutes :
*/1 *   *   *   *   root    php -f /volume1/web/folder/file.php

Seulement voilà, depuis l'installation, il ne s'execute plus. Or manuellement ça marche et ça remplie ma base de donnée sous PHPmy admin.
Un autre script .sh updatant dans ma domotique la température du Syno, fonctionne normalement.

J'ai également essayé de faire depuis DSM planificateur de tache toutes les minutes également. mais ça ne fonctionne pas non plus:
Script défini par l'utilisateur: /volume1/web/folder/file.php


Si une ame charitable a une idée, d'avance merci.

Djo.

Posté(e) (modifié)

Salut, j'ai aussi eu ce souci ! En ssh le php s'éxecute sans souci, mais pas avec le cron. La solution que j'ai trouvée est un peu naze mais elle fonctionne (va savoir pourquoi). J'ai créé un .sh que j'éxecute depuis mon planificateur de tâches, et j'appelle le php depuis celui-ci. Seulement, ça ne fonctionne pas en indiquant le chemin absolu (dans ton cas la commande php /volume1/web/folder/file.php ) . 

Ce qu'il faut faire dans ton sh :

cd volume1/
cd web/
cd folder/
php file.php

Ça semble assez bête mais ça fonctionne :biggrin:

EDIT : C'est normal si ça ne marchait pas dans ton planificateur de tâches, il faut pas mettre /volume1/web/folder/file.php mais  php /volume1/web/folder/file.php )

Si ça fonctionne pas essaie ce que j'ai dit plus haut ^^

Modifié par pyjama11
Posté(e)

Bonjour,

 

avez vous essayer de mettre le path de php, je ne sais pas ou il se trouve sur DSM 6 mais ca pourrais venir de la, l'environnement n'est peux etre plus charger comme avant lors des exécution en cron

Posté(e) (modifié)
il y a 5 minutes, pyjama11 a dit :

@devildant, le path est le même, c'est /bin/php

:)

/bin/php /volume1/web/folder/file.php  ne fonctionne pas ?

ou 

/bin/sh -c php /volume1/web/folder/file.php  ? ^^

 

apres autre option avez vous essayer avec un autre user que le root (on sait  jamais)

Modifié par devildant
Posté(e)

Bonsoir, 

Merci pour vos réponses.
Je n' y arrive pas quelque soit la méthode.
J' obtiens l'erreur suivante :
PHP Fatal error:  Call to undefined function mysqli_connect() in /volume1/web/teleinfo-ed/ecod2sql.php on line 11

Alors qu'avant la mise a jour ça fonctionnait, et de toute façon depuis un navigateur j'écris normalement dans ma base de donnée.

Pô drole!

Merci aux gurus... de m'aider:cry:

 

Djo

Posté(e)

Bah le php est bien executé, après y'a une erreur dedans.. 

mysqli_connect() est pas reconnu, pourtant c'est une fonction qui devrait l'être. Ce mode de connexion à ta bdd commence est de moins en moins utilisé, peut-être qu'il a été supprimé dans la nouvelle version de php embarquée sur DSM6, essaie peut-être de te connecter avec PDO :

<?php

$instance = new PDO('mysql:host=localhost;dbname=nom_de_ta_bdd;charset=utf8', 'root', 'mot_de_passe');

?>

 

Posté(e)

Merci pour ta réponse Pyjama... et c'est l'heure...

mais ..... toujours pas...... :

PHP Fatal error:  Uncaught exception 'PDOException' with message 'could not find driver' in /volume1/web/teleinfo-ed/ecod2sql.php:13

Stack trace:

#0 /volume1/web/teleinfo-ed/ecod2sql.php(13): PDO->__construct('mysql:host=loca...', 'root', 'pwsd****')


Merci encore...

Bon aller au dodo.

Djo

Posté(e)
il y a 3 minutes, pyjama11 a dit :

Va dans WebStation et dans les paramètres PHP vérifie que l'extension pdo est bien activée

Il l'est, ainsi que mysqli ..... GRRRRRR

Posté(e)

Bonjour,

J'ai le même problème , sous DSM 5 j'avais une tache planifier php -f /volume1/web/zibase/enregistre.php

Actuellement cette tache ne marche plus? j'ai déjà essayer toute sorte de code et recherche sur le net, mais rien.

Si quelqu'un a une suggestion.

Merci

Posté(e) (modifié)

et depuis un invite de commande le script fonctionne normalement ? (l'histoire d’être sur) 

si oui c'est que lors de sont exécution dans le context du cronjob les librairies ne sont pas chargé. donc il va falloir les charger avant l’exécution. 

avec une commande du genre

php -c /etc/php5/cli/php.ini -nf script.php

si vous ne trouvez pas d'info je vous invite a contacter synology soit via le centre d'assistance dans DSM soit depuis leurs site https://account.synology.com/support/support_form.php

Modifié par devildant
Posté(e)

Bonjour,

Oui  il fonctionne parfaitement quand je le lance directement depuis mon navigateur internet IE ?

J'ai essayer ta ligne de comande dans le cron, mais toujours rien?

Ci-joint une copie de l'erreur du planificateur de taches

Merci

Capture12.JPG

Posté(e)
il y a 20 minutes, lauthdaniel a dit :

Bonjour,

Oui  il fonctionne parfaitement quand je le lance directement depuis mon navigateur internet IE ?

J'ai essayer ta ligne de comande dans le cron, mais toujours rien?

Ci-joint une copie de l'erreur du planificateur de taches

Merci

Capture12.JPG

pour la commande 

php -c /etc/php5/cli/php.ini -nf script.php

 il faut adapter les path je ne sais pas ou se trouve le php.ini sur DSM 6.

ensuite lancer un script depuis le navigateur ou en ligne de commande c'est pas la même chose.

il faut exécuter la commande via ssh pour voir ce que ça donne

Posté(e)
il y a 1 minute, lauthdaniel a dit :

Bonsoir,

Je me connecte toujours avec Telnet, comment fait on en ssh ?

Merci

a oki a partir du moment ou tu a lancé le script en ligne de commande c'est bon, mais dans le doute c'est pareil avec le port 22 au lieux du 23

Posté(e)
Le 26/3/2016 at 00:31, djo074 a dit :

Il l'est, ainsi que mysqli ..... GRRRRRR

Salut,

Etant en vacances, je suis le post de loin, et ne peux le tester à distance.

Merci pour votre aide!

 

Djo

Posté(e)

Salut,

J'étais confronté au même problème.

Tu peux essayer php56 -f /volume1/web/folder/file.php

Il semble qu'il y ait 2 interpréteurs PHP et qu'il n'utilise pas le même en ligne de commande...

Posté(e) (modifié)
Il y a 9 heures, iPhilGood a dit :

Salut,

J'étais confronté au même problème.

Tu peux essayer php56 -f /volume1/web/folder/file.php

Il semble qu'il y ait 2 interpréteurs PHP et qu'il n'utilise pas le même en ligne de commande...

bon  a savoir, mais au final un petit mail a synology permettrai d’éclaircir tout ça non  ? 

note ça deja été fait sur le forum en https://forum.synology.com/enu/viewtopic.php?t=105754

Modifié par devildant
Posté(e)

Même problème chez moi, toutes les pages .php s’exécutent sans problème depuis un naviguateur, et avant la MAJ en cron, et depuis la MAJ, les mêmes types d'erreur lorsqu'on essaie en SSH...

Aucune piste à ce jour.

Posté(e)
il y a 5 minutes, darKxyde a dit :

Aucune piste à ce jour.

Ben si, iPhilGood a donné la solution 2 posts plus haut:

Il y a 16 heures, iPhilGood a dit :

Salut,

J'étais confronté au même problème.

Tu peux essayer php56 -f /volume1/web/folder/file.php

Il semble qu'il y ait 2 interpréteurs PHP et qu'il n'utilise pas le même en ligne de commande...

Appropriate PHP CLI --> /usr/local/bin/php56

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.