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 :

Eviter les doublons PHP MYSQL


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Par défaut Eviter les doublons PHP MYSQL
    Bonjour , je voudrais importer un fichier csv to mysql à partir de php . ça marche parfaitement , mais je voudrais éviter les doublons avant l'insertion et ça marche pas , voici un extrait de mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $varidclient="'WO ' "." $liste[0]";
     
    $sql1="SELECT IdClientDemande, IdDemande FROM demande_ou_projet WHERE IdClientDemande=$varidclient";
    $resultat1 = mysql_query($sql1);
     while ($row1 = mysql_fetch_array($resultat1)) {
     $leClient=$row1["IdClientDemande"];
      }     
     
         if ($leClient != $varidclient ) {
    $sql4="INSERT INTO demande_ou_projet(IdDemande,IdClientDemande)
              VALUE ('$laDemande',$varidclient,)";
     $resultat4 = mysql_query($sql4);

    Merci de m'aider .
    Otman.

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Met un index UNIQUE et fait un INSERT IGNORE

  3. #3
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Par défaut merci pour votre réponse
    merci .je vais rechercher comment créer un index unique sur mysql.

  4. #4
    Membre averti
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Par défaut
    Bonjour ,
    je peux pas créer un index car j'ai pas l'accès de la base du serveur .
    y'a til un moyen de le faire par un traitement avant l'insert ?
    j'ai fait cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($leClient != $varidclient ) {
    mais ça n'a pas marché :s .

  5. #5
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Comment ça tu n'y a pas accès ? Tu ne peux pas envoyer une requête ALTER en PHP ou te connecter au serveur SQL avec un terminal MYSQL ?

  6. #6
    gup
    gup est déconnecté
    Membre averti
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 39
    Par défaut
    Bonjour,

    En supposant que la table possède bien une clé primaire, on peut faire une requête d'insertion complète.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $varidclient="'WO ' "." $liste[0]";
     
    $sql="INSERT INTO demande_ou_projet(IdDemande, IdClientDemande)
              VALUES ($laDemande, $varidclient) 
             ON DUPLICATE KEY UPDATE IdDemande=$laDemande, IdClientDemande=$varisclient;";
     
    $resultat = mysql_query($sql);

Discussions similaires

  1. Eviter les doublons de champ (MySQL ADO C#)
    Par olibara dans le forum Requêtes
    Réponses: 3
    Dernier message: 06/03/2008, 00h11
  2. [Débutant][XSLT]Eviter les doublons
    Par leminipouce dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 21/10/2005, 11h34
  3. hash et Tie , eviter les doublons
    Par bluecurve dans le forum Langage
    Réponses: 5
    Dernier message: 12/10/2005, 16h39
  4. Eviter les doublons
    Par cyrill.gremaud dans le forum ASP
    Réponses: 5
    Dernier message: 14/09/2005, 12h37
  5. [langage] 2 fichier dans 1 en evitant les doublons
    Par remixxl dans le forum Langage
    Réponses: 6
    Dernier message: 26/07/2004, 17h05

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