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

Symfony PHP Discussion :

Interface entre Symfony et .sh fichier


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2015
    Messages : 2
    Par défaut Interface entre Symfony et .sh fichier
    Salut tout le monde,
    je suis nouveau dans ce forum et j'ai une question: (désolé pour mon mauvais francais, malheuresement je vien pas de la France)
    J'utlisie le "process component" avec Symfony pour executer un fichier .sh. Maintenant j'ai le probléme qu'il me faut deux variables dans le .sh fichier et je sais pas comment je peux l'annoncer dans le Symfony php code.
    Ainsi j'ai mon code de php pour vous...

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    <?php
     
    namespace Cat\AppBundle\Controller;
     
    use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
    use Symfony\Component\Process\Exception\ProcessFailedException;
    use Symfony\Component\Process\Process;
    use Symfony\Bundle\FrameworkBundle\Controller\Controller;
     
    /**
     * @Route("pro/")
     */
    class ProcessTestController extends Controller
    {
        /**
         * @Route("test/")
         */
        public function test()
        {
            $executableShellScript = '/srv/cat/www/htdocs/symfony_process/GUIImages/create.sh';
            $process = new Process($executableShellScript);
            try {
                $process->setWorkingDirectory('/srv/cat/www/htdocs/symfony_process/');
                $process->mustRun();
                echo $process->getOutput();
     
            } catch
            (ProcessFailedException $e) {
                echo $e->getMessage();
            }
            if($process->isSuccessful()) {
                echo file_put_contents('/srv/cat/www/htdocs/symfony_process/ProcessOutput/tess6st.txt', $executableShellScript. ' is '. $process->getExitCodeText());
            } else {
                    echo file_put_contents('/srv/cat/www/htdocs/symfony_process/ProcessOutput/errortest.txt', $process->getErrorOutput());
                }
     
            return $this->render('AppBundle::layout.html.twig');
        }
    }

    Merci déjà pour votre aide et a bientôt.

    Florin

  2. #2
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Gers (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2013
    Messages : 71
    Par défaut
    Bonjour,

    Le code ci-dessous ne fonctionne pas ? Désolé, je n'ai pas les moyens de tester immédiatement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public function test()
    {
        $script = '/srv/cat/www/htdocs/symfony_process/GUIImages/create.sh ' . $attr1 . " " . $attr2;
        $executableShellScript = $script;
        $process = new Process($executableShellScript);
    ...

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2015
    Messages : 2
    Par défaut
    Bonjour,
    non malheureusement ca ne functionne pas comme ca.
    J'ai lessayé avec le proccesbuilder maintenant:
    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
    20
    21
    22
    23
     
    SymfonyService
     
     public function executeScript($shellScript, $options)
        {
            $this->shellscript = $shellScript;
            $this->options = $options;
            $builder = new ProcessBuilder(array($shellScript));
            foreach ($options as $opt => $value) {
                $builder->setOption($opt, $value);
            }
            $process = $builder->getProcess();
            $process->run();
     
    SymfonyController
     
    public function runScript()
        {
            $scripts = $this->get('cat.config.script');
            $options = array('Partnumber: ' => '3256','Description: ' => 'TestDescription');
            $scripts->executeScript('/srv/cat/www/htdocs/symfony_process/GUIImages/create.sh', $options);
            return $this->render('AppBundle::layout.html.twig');
        }

Discussions similaires

  1. générer une interface graphique à partir d'un fichier XML
    Par chaval dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 15/03/2006, 10h32
  2. [VB]interface entre un PC et un gradateur
    Par Invité dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 21/02/2006, 18h01
  3. interface entre WIA et Access 2003
    Par pixeldargent dans le forum Access
    Réponses: 9
    Dernier message: 17/10/2005, 14h37
  4. interface entre oracle et MySQL
    Par sbenoist dans le forum Oracle
    Réponses: 21
    Dernier message: 19/08/2004, 18h51
  5. [Architecture] Interface entre C++ & Java
    Par yanis97 dans le forum Entrée/Sortie
    Réponses: 13
    Dernier message: 13/07/2004, 15h46

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