IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] lancer l'execution d'un script


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2002
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 33
    Points : 24
    Points
    24
    Par défaut [Système] lancer l'execution d'un script
    je souhaite faire la chose suivante :
    je voudrais lancer l'exécution d'un script test.sh présent sur mon serveur à partir d'une page php.

    ca doit être faisable j'imagine... mais je ne trouve pas comment !

    s'il vous plait... un peu d'aide..

  2. #2
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 503
    Points
    503
    Par défaut
    Pour ça en PHP, tu as par exemple shell_exec qui te permet d'éxécuter une commande depuis un shell :

    http://fr3.php.net/manual/fr/function.shell-exec.php

    Vérifie aussi que tu as le droit d'utiliser ce genre de fonction sur ton serveur où PHP est installé.
    Développeur Java / Android.
    The Truth About Bitcoin : https://www.the-truth-about-bitcoin.com/
    In Bitcoin We Trust : https://inbitcoinwetrust.substack.com
    Retrouvez mes Apps Android : https://play.google.com/store/apps/d...01024188312025
    Tout sur le Bitcoin, la Blockchain et les Altcoins : https://www.toutsurlebitcoin.fr
    Devenez une meilleure de vous-même jour après jour : https://www.jedeviensmeilleur.fr

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2002
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 33
    Points : 24
    Points
    24
    Par défaut
    merci pour la commande mais ca ne marche pas encore.
    j'ai bien verifier l'etat de la variable "safe_mode" dans le php.ini : elle est a false.
    j'ai pour tester mis les droits d'execution pour tous les utilisateurs sur mon script

    tout cela ne change rien...
    ma page php, si quelqu'un a une idee...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?php
     
    $prog='/usr/local/bin/test.sh';
     
    if (file_exists($prog))
    {
    echo 'le prgr a ete trouve';
     
    $fini = shell_exec($prog);
     
    echo('fin');
    }
     
    else
    {
    echo("prgr introuvable");
    }
    ?>
    [/code]

  4. #4
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 503
    Points
    503
    Par défaut
    Citation Envoyé par alexandra
    merci pour la commande mais ca ne marche pas encore.
    j'ai bien verifier l'etat de la variable "safe_mode" dans le php.ini : elle est a false.
    j'ai pour tester mis les droits d'execution pour tous les utilisateurs sur mon script

    tout cela ne change rien...
    ma page php, si quelqu'un a une idee...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <?php
     
    $prog='/usr/local/bin/test.sh';
     
    if (file_exists($prog))
    {
    echo 'le prgr a ete trouve';
     
    $fini = shell_exec($prog);
     
    echo('fin');
    }
     
    else
    {
    echo("prgr introuvable");
    }
    ?>
    [/code]

    Essaie en mettant le script shell dans le même repertoire que ton script php qui le lance. Et tu fais : shell_exec("./test.sh");

    Peut être qu'il empêche d'éxécuter un script qui n'est pas dans l'arborescence du répertoire courant (celui d'exécution du script php).
    Développeur Java / Android.
    The Truth About Bitcoin : https://www.the-truth-about-bitcoin.com/
    In Bitcoin We Trust : https://inbitcoinwetrust.substack.com
    Retrouvez mes Apps Android : https://play.google.com/store/apps/d...01024188312025
    Tout sur le Bitcoin, la Blockchain et les Altcoins : https://www.toutsurlebitcoin.fr
    Devenez une meilleure de vous-même jour après jour : https://www.jedeviensmeilleur.fr

  5. #5
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    moi j'utilise la fonction exec() et ça fonctionne trés bien...

    aprés les goûts et les couleurs



  6. #6
    Membre à l'essai
    Inscrit en
    Mars 2002
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 33
    Points : 24
    Points
    24
    Par défaut
    shell_exec/exec, meme résultat...

    j'ai aussi déplacer mon fichier test.sh dans le meme repertoire, mais ca ne change rien...

    je me demande si ca ne vient pas du fait que je suis l'utilisateur "apache" quand j'execute mon script php et non pas "root".

    peut être que je n'ai pas les droits de créer un repertoire si je suis utilisateur "apache"

  7. #7
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    si tu le crées dans un répertoire en amont du répertoire web oui...

    dans ce cas, où tu donnes les droits au répertoire parent, où tu utilises "sudo"...

Discussions similaires

  1. Lancer un executable depuis un script
    Par Easleys dans le forum Langage
    Réponses: 10
    Dernier message: 24/05/2015, 13h00
  2. [Système] Lancer un script sans attendre sa fin ?
    Par parisien dans le forum Langage
    Réponses: 9
    Dernier message: 03/11/2005, 22h09
  3. [Système] Lancer un executable sans attendre la fin
    Par raptor70 dans le forum Langage
    Réponses: 1
    Dernier message: 27/10/2005, 14h25
  4. Réponses: 3
    Dernier message: 16/10/2005, 13h43
  5. [Système] Lancer un script Perl
    Par ebaynaud dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 14/10/2004, 14h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo