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 :

Vérifier l'existance d'une donnée dans la base avant insertion [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Him
    Him est déconnecté
    Membre éclairé Avatar de Him
    Profil pro
    Inscrit en
    Février 2006
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 244
    Par défaut Vérifier l'existance d'une donnée dans la base avant insertion
    Bonjour,
    Comment faire pour vérifier dans une table si une information y est déja représentée ?

    En gros je dois ajouter des url dans une base via un formulaire, & je voudrais qu'à l'insertion mon script me dise : cette url éxiste déja dans la base, afin d'éviter de duppliquer inutilement l'information.

    Cordialement

  2. #2
    Membre émérite Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Par défaut
    Tu fais une recherche dans ta base à l'aide de la commande sql SELECT ensuite suivant l'existence ou non de ton url tu execute telle ou telle action:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sql = "SELECT * FROM tatable WHERE url = '{$_POST['url']]'";
    $result = mysql_query($sql);
    ...

  3. #3
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    eh ben, avant ton INSERT, tu fais un SELECT avec les critères qui vont bien, et si la requête retourne plus de zéro réponses, tu fais ce que tu as à faire...

  4. #4
    Him
    Him est déconnecté
    Membre éclairé Avatar de Him
    Profil pro
    Inscrit en
    Février 2006
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 244
    Par défaut
    ok,
    merci à vous, je comprends le principe.
    mais je suis une grosse buse en php, (bah oui, faut bien débuter un jour )

    & je ne vois pas comment étaler l'opération...

  5. #5
    Membre éprouvé
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Par défaut
    Il faut faire une requête avec mysql_num_rows() si je me souviens bien. Va voir sur la doc

  6. #6
    Him
    Him est déconnecté
    Membre éclairé Avatar de Him
    Profil pro
    Inscrit en
    Février 2006
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 244
    Par défaut
    Bonjour,
    voila j'ai continuer mes recherches,
    est-ce que je peux y arriver avec quelque chose dans ce style :

    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
     
    $exist = false;
    $result = mysql_db_query("$database", "SELECT url FROM liens");
     
    while ($row = mysql_fetch_array($result))
    {
    if ($url = $row["url"])
    {
    $exist = true;
    }
    }
    if ($exist)
    {
     
    ajouter l'url
     
    }
    Si oui, je ne vois parcontre pas ou mettre le texte url existe déja...

  7. #7
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Plutôt comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $result = mysql_db_query($database, "SELECT url FROM liens WHERE url = '" . $url . "'");
     
    if(mysql_num_rows($result) == 0)
    {
           //ajouter l'url
    }

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

Discussions similaires

  1. Vérifier l'existence d'une clef dans la base de registre
    Par CHARLI BONGO dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/05/2013, 17h49
  2. Vérifier l'existence d'une table dans une base de données
    Par mounim_taoufik dans le forum Administration
    Réponses: 8
    Dernier message: 02/03/2010, 16h24
  3. tester l'existance d'une donnée dans une BDD
    Par rpg59 dans le forum C++
    Réponses: 4
    Dernier message: 28/05/2008, 09h30
  4. Vérifier l'existence d'une valeur dans un ComboBox
    Par logiciel_const dans le forum Composants VCL
    Réponses: 6
    Dernier message: 08/03/2008, 09h07
  5. vérifier l'existance d'une table dans une base de donnée
    Par zidenne dans le forum Bases de données
    Réponses: 1
    Dernier message: 31/10/2005, 11h39

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