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 :

Duplicata d'un champ


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut Duplicata d'un champ
    Bonjour,

    j'ai une table films avec id_film + d'autres champs
    puis une table realisateurs avec id_realisateur + d'autres champs
    et enfin une table films_realisateur qui contient id_film et id_realisateur.

    Dans la table films_realisateur j'ai déjà un enregistrement pour un film
    id_film = 9 id_realisateur = 2
    Je veux ajouter un 2ème réalisateur pour le film :
    id_film = 9 id_realisateur = 14

    Le problème c'est que j'ai l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Erreur SQL !INSERT INTO films_realisateur(id_film, id_realisateur) VALUES('9','14')
    Duplicata du champ '9' pour la clef 1
    La table films_realisateur ne contient pas de champ avec une clé primaire.

    Est ce quelqu'un peut m'aider ?
    Je ne vois pas pourquoi ce problème !!

    Merci d'avance

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Bonjour

    Tu as testé ta requête par PhpMyAdmin ? On pourrait avoir la structure complète de la table ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre éprouvé
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 898
    Par défaut
    Citation Envoyé par Celira Voir le message
    Bonjour

    Tu as testé ta requête par PhpMyAdmin ? On pourrait avoir la structure complète de la table ?
    Bonjour Celira.

    J'ai testé la requête sur PhpMyAdmin et j'ai effectivement le même problème.
    J'ai regardé mes autres tables de liaison et j'ai effectivement une clé sur celle-ci. Donc j'ai modifié et c'est ok.

    Par contre j'ai un autre souci, quand j'ajoute un enregistrement à ma table et que je fais un rafraichissement de l'écran, la requête s'exécute une nouvelle fois.
    Voilà ce que j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    //Ajoute un réalisateur au film dans la table films_realisateur
    if (isset($_POST['id_realisateurs']))	$liste_real1 = $_POST['id_realisateurs'];
    else $liste_real1 = "";
    if (!empty($liste_real1)){
    	$tableau_real = explode(',',$liste_real1);
    	$nbr = count($tableau_real) - 1;
    	for ($i = 0; $i < $nbr; $i++) {
    		$sql = "INSERT INTO films_realisateur(id_film, id_realisateur)
    		VALUES('$id_film','$tableau_real[$i]')";
    		mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
    	}
    	$_POST['id_realisateurs'] = "";
    	$liste_real1 = "";
    }
    Pourquoi la requête s'exécute quand je rafraichi l'écran ?

Discussions similaires

  1. [phpMyAdmin] Duplicata du champ '6' pour la clef 'PRIMARY'
    Par laurentSc dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 06/03/2015, 10h48
  2. Champ iDoc 'duplicata' de facture
    Par Yannoche dans le forum SAP
    Réponses: 0
    Dernier message: 17/07/2012, 17h28
  3. #1062 - Duplicata du champ '1' sous php myadmin
    Par likethepsycho dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 15/03/2009, 12h19
  4. [MySQL] une erreure bizarre! Duplicata du champ '' pour la clef 1
    Par roy-mustang dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 09/03/2009, 14h12
  5. Erreur MySQL : #1062 Duplicata du champ
    Par akrobat dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 17/03/2008, 20h40

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