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 :

[SQL] Comparer résultat d'une requête Sql avec php


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 44
    Points : 31
    Points
    31
    Par défaut [SQL] Comparer résultat d'une requête Sql avec php
    Hi guys,

    Après avoir galérer (un peu), je me tourne vers vous et me traine à vos pieds

    Voila, je récupère une variable (d'un Form.) et je voudrais la comparer au contenu d'une table Sql

    Et là, je suis largué, alors please help, comment faire

    La valeur qui arrive du FORM est $host, et je voudrais qu'elle soit refusée si elle est déja existante dans ma table, et donc interdire son inscription dans cette base

    MySql base : customerentry
    table : customer
    field : host

    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
    <?php 
     
    //variable venant du FORM
    $host = $_POST['host']; 
     
     
    $db = mysql_connect('localhost', 'root', ''); 
     
    mysql_select_db('customerentry',$db); 
     
    // Requête SQL 
    $sql = 'SELECT host FROM customer'; 
     
    // Requête 
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
     
    // Boucle 
    while($data = mysql_fetch_assoc($req)) 
        { 
     
    // on affiche les informations de l'enregistrement en cours 
        echo '<b>'.$data['host'].' </i><br>'; 
        }
     
    // déconnection
    mysql_close();
     
    ?>
    Merci pour votre aide, et bonne soirée

    Nicolas

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Il faut faire quelquechose comme ca:
    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
    <?php 
     
    //variable venant du FORM
    $host = $_POST['host']; 
     
    $db = mysql_connect('localhost', 'root', ''); 
     
    mysql_select_db('customerentry',$db); 
     
    // Requête SQL 
    $sql = "SELECT host FROM customer WHERE host='". mysql_real_escape_string($host) ."' "; 
     
    // Requête 
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
     
    // Je regarde le nombre de résultats
    $nbRes = mysql_num_rows($req);
     
    if($nbRes == 0)
    {
    echo "La valeur $host n'existe pas vous pouvez l'ajouter!";
    }
    else
    {
    echo "La valeur $host est deja dans la base, choisissez en une autre!";
    }
     
    // déconnection
    mysql_close();
     
    ?>

  3. #3
    Membre éprouvé Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Points : 1 262
    Points
    1 262
    Par défaut
    Salut,
    personnellement je ferais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select count(host) FROM customer where host = '$host';
    Et en fonction du résultat tu sais si tu peux enregistrer ou non la nouvelle donnée en BD.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 44
    Points : 31
    Points
    31
    Par défaut Comparer requête Sql avec php
    Thanks pour votre aide, je teste ça et je reviens !!

    Merci encore

    A+

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mai 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 44
    Points : 31
    Points
    31
    Par défaut Comparer résultat d'une requête Sql avec php
    OK, ça roule, j'ai rajouté

    ********************

    if($nbRes == 0)

    mysql_query("INSERT INTO customer (host) VALUES ('$host')");

    ********************

    pour insérer $host dans la table, et tout baigne

    Merci à vous et bonne soirée

    Nicolas

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

Discussions similaires

  1. remplir un Tableau avec le résultat d'une requête SQL
    Par Jean-Claude Dusse dans le forum ASP.NET
    Réponses: 13
    Dernier message: 23/02/2009, 15h00
  2. Réponses: 7
    Dernier message: 21/08/2008, 17h44
  3. Réponses: 1
    Dernier message: 25/06/2007, 16h33
  4. [MySQL] Comparer dans un if le résultat d'une requête sql
    Par ledu_alexandre dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 21/01/2007, 04h24
  5. [Débutant][SQL] Requête SQL à l'intérieur d'une requête SQL
    Par Kily10 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 27/10/2006, 11h54

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