Problème PHP - SNMP

Résolu/Fermé
Wichton Messages postés 14 Date d'inscription lundi 5 janvier 2009 Statut Membre Dernière intervention 19 février 2009 - 10 févr. 2009 à 11:17
Wichton Messages postés 14 Date d'inscription lundi 5 janvier 2009 Statut Membre Dernière intervention 19 février 2009 - 19 févr. 2009 à 13:34
Bonjour,
J'aimerais écrire un script qui me permet de faire du monitoring de serveur DOMINO - Notes en utilisant le protocole SNMP et des fichier de config ou son inscrit les numéro d'OID et le correspondance.
J'ai jusque là codé quelque chose d'assez logique (enfin je crois) mais je bute.
Voici le code :
<?php
   $hostname = "default";
   $community = "default";
   $OID = "default";
   if (isset($_POST['hostname']) && isset($_POST['community'])) //Si formulaire validé
   {
      $hostname = $_POST['hostname'];
      $community = $_POST['community'];
      if (!$file = @fopen("$hostname.cfg","r"))
      {
         echo "Erreur dans le nom d'hote - impossible d'ouvrir le fichier. Veuiller reesseyer";
      }
      else
      {
         echo "<table align=\"center\">";
         $line = fgets($file);
         while (!feof($file))
         {
            $e_line = explode(":","$line");
            if (ereg("#", "$e_line[0]"))
            {
            }
            else
            {
               $OID = $e_line[1];
               $value = snmpget($hostname, $community, $OID);
               $e_value = explode(":", "$value");
               echo "  <tr>
                          <td align=\"left\">$e_line[0]</td>
                          <td align=\"left\">$e_value[1]</td>
                       </tr>";
            };
            $line = fgets($file);
         };
         echo "</table>";
         fclose($file);
      };
   };
?>
Et voici un exemple de fichier config :
dead-mail			:X.X.X.X.X.X.1.0
#max-mail-delivery-time	:X.X.X.X.X.X.4.12.0
router-unable-to-transfer	:X.X.X.X.X.X.334.72.1.1.4.19.0

Le seul problème est que mon e_value[1] ne me retourne rien, cependant si je change ma requête snmp en y mettant un vrai numéro d'OID cela fonctionne.. Mais lorsque j'affiche ma variable $OID elle a exactement la même valeur. D'ou je ne comprend pas pourquoi ça ne fonctionne pas.

Si quelqu'un à une idée !
Merci de m'avoir lu, à tout bientôt je l'espère.
A voir également:

1 réponse

Wichton Messages postés 14 Date d'inscription lundi 5 janvier 2009 Statut Membre Dernière intervention 19 février 2009 1
19 févr. 2009 à 13:34
Si jamais, j'ai trouvé la solution si ça peut aider quelqu'un, ma variable $OID avait un espace au début et à la fin de la valeur.
J'ai juste eu besoin de faire un trim($OID) lors de l'affectation et c'est passé tout droit !
A plus !
0