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 Perl Discussion :

Problèmes de Variables ?


Sujet :

Langage Perl

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 52
    Points : 22
    Points
    22
    Par défaut Problèmes de Variables ?
    Bonsoir,

    Je me trouves devant un petit grand problème
    J'ai un fichier PHP codé comme suit, qui envoit des variables à un script perl :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $connection2 = ssh2_connect('192.168.0.1', 22);
    ssh2_auth_password($connection2, '****', '*****');
    $stream = ssh2_exec($connection2, "/home/checker.pl $var1 $var2");
    Les deux variables $var1 et $var2 sont bien initialisées.

    Voici le code du script perl, recevant donc ces variables :
    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
    #!/usr/bin/perl
     
    #Initialisation variables
     
    $var1 = $ARGV[0];
    $var2 = $ARGV[1];
     
    #End init.
     
     
    $finder = system("find /home/$var1 -name '$var2'");
    if ($finder == "$var2"){
     
     print "ok\n\n";
     }
     else {
     
     print "NO\n\n";
     }
    J'ai rétréci le code au maximum

    J'ai testé d'abord le script perl avec la console, cela marchait parfaitement (il trouve bien le fichier et affiche donc "ok").Sinon il marquait "No".

    Mais en passant par le script php, que le fichier y soit ou pas, il affiche tout le temps "No".
    Pourtant les variables sont bien reçues....

    Par un systeme de "log" j'ai pu m'apercevoir que cela ne marchait pas via un script php, mais cela devrait marcher, car j'utilises le même genre d'envoit de variables vers des scripts perl pour d'autres choses....

    Pouvez-vous m'aider ?
    Je vous en remercies.

    Benjamin.

  2. #2
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Très probablement un problème de droit : l'utilisateur en console et quand il est exécuté à distance ne sont pas les même, et c'est pourquoi à distance tu ne peux utiliser le "find" ou du moins pas sur ces dossiers.

    --
    Jedaï

  3. #3
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Citation Envoyé par Jedai
    Très probablement un problème de droit : l'utilisateur en console et quand il est exécuté à distance ne sont pas les même, et c'est pourquoi à distance tu ne peux utiliser le "find" ou du moins pas sur ces dossiers.

    --
    Jedaï
    Je suis d'accord avec notre maître Jedai. J'y ajouterais cependant la remarque suivante: dans ton script Perl, as-tu veillé à "chomper" (utiliser chomp) sur tes 2 variables $ARGV[0] et $ARGV[1] ? pas mal d'erreurs viennent de là aussi.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  4. #4
    Invité
    Invité(e)
    Par défaut
    "chomper".... j'y avais pas pensé à celle-là !

  5. #5
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Citation Envoyé par kuzco
    "chomper".... j'y avais pas pensé à celle-là !
    Néanmoins, est-ce que cela t'a aidé ? Car si ça tourne, n'oublies pas

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  6. #6
    Invité
    Invité(e)
    Par défaut
    C'est pas moi qui aie le problème, c'est Life Hunter... 8)

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 52
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    En effet cela peut être un problème de permissions, car mon serveur web à l'user et le group wwwroot, tandis que celui où est le fichier est gsroot...

    Le fichier perl est atribué au groupe gsroot.

    Mais normalement il ne devrait pas y avoir de problèmes de droits vu que j'utilises le même genre de connexions pour les autres scripts.

    Sinon "chomper", kesako ?
    Je vais cherché de mon côté.

    Merci.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 52
    Points : 22
    Points
    22
    Par défaut
    J'ai regardé pour "chomp", mais les variables à la sortie sont correctes...(une fois dans le script perl)

  9. #9
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Citation Envoyé par kuzco
    C'est pas moi qui aie le problème, c'est Life Hunter... 8)
    Oups, sorry
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

Discussions similaires

  1. [VB.NET] Probléme de variable
    Par Silvia12 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/03/2005, 11h51
  2. [Debutant(e)]problème de variable d'environnement
    Par tolsam dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/08/2004, 19h08
  3. Problème de variable
    Par vp dans le forum Windows
    Réponses: 2
    Dernier message: 14/05/2004, 16h27
  4. [Débutant] Problème de variables
    Par bonnefr dans le forum SWT/JFace
    Réponses: 9
    Dernier message: 12/05/2004, 17h41
  5. [servlet]problème de variable jamais nulle
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/03/2004, 09h31

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