On dirait que vous essayez d'exécuter le code PHP directement dans votre shell. Votre shell ne parle pas PHP, donc il interprète votre code PHP comme s'il était dans la langue maternelle de votre shell, comme si vous aviez littéralement exécuté <?php
sur la ligne de commande.
Les scripts shell commencent généralement par une ligne "shebang" qui indique au shell quel programme utiliser pour interpréter le fichier. Commencez votre dossier comme celui-ci:
#!/usr/bin/env php
<?php
//Connection
function connection() {
En outre, la chaîne vous passez à exec
ne fait aucun sens. Il commence par un slash tout seul, il utilise trop de périodes dans le chemin, et il a une parenthèse droite.
Copiez le contenu de la chaîne de commande et collez-les sur votre ligne de commande. Si ce n'est pas le cas, alors exec
ne sera probablement pas capable de l'exécuter non plus.
Une autre option consiste à modifier la commande que vous exécutez. Au lieu d'exécuter le script directement, exécutez php
et passez votre script en tant qu'argument. Alors vous ne devriez pas avoir besoin de la ligne Shebang.
exec('php name.php');
Ok, merci. J'utilise include() et ça marche! – nabrugir
@skiria Si cela fonctionne, alors c'est la réponse acceptée? – tylermac
désolé, je suis nouveau sur ce point et je ne sais pas que j'ai l'accepter la réponse .... – nabrugir