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

PHP & Base de données Discussion :

Recherche pc par saisie d'ip [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 76
    Par défaut Recherche pc par saisie d'ip
    Bonjour a tous !

    J'explique mon but :
    Je souhaite a partire d'une page php saisir le nom d'une machine et interoger une base de donnée (contenant les nom @ip @mac de toutes les machines) pour ensuite dans une autre page afficher les informations de la machine concerné :

    Voici les lignes de ma page php me permettant de saisir l'ip et de la transmettre a la seconde page qui fera l'interogation
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <td height="112" width="20%" bgcolor=#CDF0F0><div align="center"><br>
    Entrer ici le nom de la machine que vous cherchez<br><br><br><br>
     
    <form method="POST" action="unemachine.php">
    <input type="text" name="unemachine" size="20"><br><br><br><br><br>
    <input name="submit" type="submit" value="Chercher"></form> 
           </td>

    Voici la partie de code de la seconde page qui se charge de l'interogation de la base de donnée

    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
     
    <?php
    include("titre.php");
    include("../connect_mysql.php");
     
    $query1 = (" select * from computer where nom like '$unemachine%'");
    $result1 = mysql_query($query1);
    $result = mysql_query($query1);
    $row = mysql_fetch_row($result);
    $taille=sizeof($row);
    $nb=0;
     
     
    if($taille !=1){ 
     
      include("../affichage.php");
      while($row1 = mysql_fetch_row($result1)) {
        $ip=$row1[0];
        $nom =$row1[1];
        $mac = $row1[2];
        $code = $row1[3];
        $info = $row1[4];
        $entree = $row1[5];
        $batiment= $row1[6];
        $salle= $row1[7];
        $intervention = $row1[8];
        $creation = $row1[9];
        $date_intervention = $row1[10]; 
        $maj = $row1[11];
    je vous épargne les partie de mise en page de mon code.

    Mon probléme est que lorque je réalise la saisie du nom une autre page s'ouvre mais au lieu d'obtenir les renseignement de LA machine dont le nom a été saisi cela me renvoit toute la base de donée

    Merci de consacrer un peu de temp pour mon probléme.

    Je précise que mon niveau en php et en sql n'est pas enorme.

  2. #2
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Bonjour à toi!

    Citation Envoyé par Gad29
    Bonjour a tous !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $query1 = (" select * from computer where nom like '$unemachine%'");
    $result1 = mysql_query($query1);
    $result = mysql_query($query1);
    $row = mysql_fetch_row($result);
    $taille=sizeof($row);
    $nb=0;
     
     
    if($taille !=1){ 
     
      include("../affichage.php");
      while($row1 = mysql_fetch_row($result1)) {
    Deja, pourquoi fais tu deux mysql_query de suite ?
    Ensuite as tu regardé ta requete précisément (affiche la avant de l'envoyer). Parce que tu utilises $unemachine qui n'est définie nulle part. Donc ca te renvoie toutes les machines de la base de données qui sont telles que '%' soit toutes.

    Pour récupérer le nom de la machine il faut utiliser $_POST['unemachine'].

    J'espère que ca t'aide,

    Koopajah

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 76
    Par défaut
    merci de la rapiditée de ta reponse.

    Tout d'abnord le code n'ai pas totalement d emoi en effet je suis en stage et on m'as chargé de remettre en place ce qui avait été fait et de l'améliorer.

    Si j'utilise $_POST['unemachine'] de la facon suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query1 = (" select * from computer where nom like '$_POST['unemachine']'");
    avec ou sans les 2 query j'obtient une belle page blanche.

    Je pense que l'erreur viens du fait que je doit mal me débrouiller pour transmettre l'adresse saisie d'une page a une autre n'ayant pas u de formation la dessus j'ais ragardé sur internet et les exemple de code sont en concordance avec mon code.

    Bref je vais être en week end et dans l'impossibilité de travailler dessus je te tienderais au courant dés lundi de mes avancées.
    Merci encore

  4. #4
    Membre confirmé
    Inscrit en
    Juillet 2005
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 130
    Par défaut
    Bonjour,

    je te propose d'essayer de mettre la valeur du POST dans une variable et de l'utiliser dans ta requete comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $machine=$_POST['unemachine'];
    $query1 = (" select * from computer where nom like '$machine'");

  5. #5
    Membre éprouvé Avatar de LeXo
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 147
    Par défaut
    voila donc moi je pensais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $sql="SELECT * FROM computer WHERE nom LIKE '". $_POST['unemachine']."'";
    $req=mysql_query($sql) or die("Erreur SQL !". $sql ."<BR>". mysql_error());
    if (mysql_num_rows($req)!=0){
    while $data=mysql_fetch_assoc($req)){
    echo"Nom : ". $data['nom'] ."<BR>\n";
    echo"Processeur : " . $data['processeur']."<BR>\n";
    ...
    echo"Champ n : ". $data['champ n'] ."<BR>\n";
    }
    }else{
    echo"Pase de machine trouvé.";
    }

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 76
    Par défaut
    Merci pou ces reponse je teste ca lundi a la premiére heure et vous tiens au courant.

    Encore désolé pour mes lacunes en php.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Moteur de recherche, affichage par page et url rewriting
    Par paupiette dans le forum Langage
    Réponses: 5
    Dernier message: 22/06/2007, 10h45
  2. Réponses: 2
    Dernier message: 30/04/2007, 14h56
  3. [Recherche] Authentification par certificats
    Par chifo dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 26/04/2007, 14h04
  4. Recherche fonte par défaut
    Par barbiche dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 08/03/2007, 16h14
  5. Formulaire de recherche multicriteres par cafeine
    Par jo-popo dans le forum Access
    Réponses: 8
    Dernier message: 12/01/2006, 00h53

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