Probleme de doublons

Résolu/Fermé
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 - 6 févr. 2016 à 10:12
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 11 févr. 2016 à 11:36
Bonjour à tous j'ai un problème de doublons que je n'arrive pas avoir l'erreur pourriez vous me donner un coup de main svp et j'ai les photos qui ne s'affiche pas (juste des petits carrés) voici le code
<?php
  
if(!empty($_POST['ajouter'])) {
    $nom=$_POST['nom'];
    $prenom=$_POST['prenom'];
    $cont=$_POST['phone'];
    $contact2=$_POST['contact2'];
    $email=$_POST['email'];
    $sexe=$_POST['sexe'];
    $lieu_habita=$_POST['lieu_habita'];
    $numpiece=$_POST['numpiece'];
    $nomphoto=$_FILES['photo']['name'];
     $matricule=$_POST['matricule'];
      
    require_once('bdconnexion.php');
    //pour plus de lisibilité => attention à l'espace en fin de chaine
    $query="SELECT nom_auditeur,prenom_auditeur,telephone_1_auditeur,telephone_2_auditeur,email_auditeur,sexe_auditeur,lieu_habitation,numero_piece,photo_auditeur,Matricule_auditeur ";
    $query.="FROM auditeur ";
    $query.="WHERE nom_auditeur='".$nom."' ";
    $query.="AND prenom_auditeur='".$prenom."' ";
    $query.="AND telephone_1_auditeur='".$cont."' ";
    $query.="AND telephone_2_auditeur='".$contact2."' ";
    $query.="AND email_auditeur='".$email."' ";
    $query.="AND sexe_auditeur='".$sexe."' ";
    $query.="AND lieu_habitation='".$lieu_habita."' ";
    $query.="AND numero_piece='".$numpiece."' ";
    $query.="AND photo_auditeur='".$nomphoto."' ";
    $query.="AND Matricule_auditeur='".$matricule."'";
 
    $send=mysql_query($query) or die(mysql_error());
    $nbre=mysql_num_rows($send);
    if($nbre !== FALSE && $nbre == 0){
        $req="INSERT INTO auditeur (nom_auditeur,prenom_auditeur,telephone_1_auditeur,telephone_2_auditeur,email_auditeur,sexe_auditeur,lieu_habitation,numero_piece,photo_auditeur,Matricule_auditeur)";
        $req .= " value ";
        $req .= "('$nom','$prenom','$cont','$contact2','$email','$sexe','$lieu_habita','$numpiece','$nomphoto','$matricule')";
        $envoi=mysql_query($req) or die(mysql_error());
        //IF facultatif, car l'insertion s'est bien pass&ée
        if ($envoi !== FALSE) {
            //Deplacement fichier seulement si insertion OK
            echo "nouveau auditeur ajouté";
            $file_tmp_name=$_FILES['photo']['tmp_name'];
            move_uploaded_file($file_tmp_name,"./images/$nomphoto");
        }
    } else {
        echo "cet auditeur s'est dèjà inscrit";    
    }
}
?>
A voir également:

11 réponses

delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
8 févr. 2016 à 10:31
en fait le code ne fait que des insertions même quand l’élément existe déjà et quand je fais afficher les infos dans une page tout apparaît sauf la photo juste un petit carré
1
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
6 févr. 2016 à 16:04
Bonjour,

Il te faudra être plus précis.....
des doublons.... dans quoi ??? où ça ????
les images ne s'affichent pas.... où ça ??? avec quel code ????

Là tu ne nous a coller que le code d'insertion en BDD de ton formulaire...
sans aucune autre explication ... impossible de te répondre.

PS: tu utilises l'ancienne extension mysql .. je t'invite à lire ceci puis à en changer : https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top

0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
9 févr. 2016 à 06:51
Est-ce que tu as essayé de faire un ECHO de ta variable $query pour voir si la requête, testée DIRECTEMENT dans ta BDD, te retourne quelque chose ??


au passage... dans le WHERE... je ne vérifierai que l'email (et éventuellement nom / prénom ) .... Là ... tu vérifies trop de choses.... il suffirait qu'il change de numéro de téléphone ou le nom de la photo... et là ... tu referais une insertion en BDD....

0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
9 févr. 2016 à 17:24
oui j'ai un résultat mais quand je remet les memes info il accepte
 <?php
  
if(!empty($_POST['ajouter'])) {
    $nom=$_POST['nom'];
    $prenom=$_POST['prenom'];
    $cont=$_POST['phone'];
    $contact2=$_POST['contact2'];
    $email=$_POST['email'];
    $sexe=$_POST['sexe'];
    $lieu_habita=$_POST['lieu_habita'];
    $numpiece=$_POST['numpiece'];
    $nomphoto=$_FILES['photo']['name'];
     $matricule=$_POST['matricule']; 
    require_once('bdconnexion.php');
    //pour plus de lisibilité => attention à l'espace en fin de chaine
    $query="SELECT nom_auditeur,prenom_auditeur,email_auditeur,sexe_auditeur,Matricule_auditeur ";
    $query.="FROM auditeur ";
    $query.="WHERE nom_auditeur='".$nom."' ";
    $query.="AND prenom_auditeur='".$prenom."' ";
    $query.="AND email_auditeur='".$email."' ";
    $query.="AND sexe_auditeur='".$sexe."' ";
    $query.="AND Matricule_auditeur='".$matricule."'";
    $send=mysql_query($query) or die(mysql_error());
    $nbre=mysql_num_rows($send);
    if($nbre !== FALSE && $nbre == 0){
        $req="INSERT INTO auditeur (nom_auditeur,prenom_auditeur,telephone_1_auditeur,telephone_2_auditeur,email_auditeur,sexe_auditeur,lieu_habitation,numero_piece,photo_auditeur,Matricule_auditeur)";
        $req .= " value ";
        $req .= "('$nom','$prenom','$cont','$contact2','$email','$sexe','$lieu_habita','$numpiece','$nomphoto','$matricule')";
        $envoi=mysql_query($req) or die(mysql_error());
        //IF facultatif, car l'insertion s'est bien passée
        if ($envoi !== FALSE) {
            //Deplacement fichier seulement si insertion OK
            echo "nouveau auditeur ajouté";
            $file_tmp_name=$_FILES['photo']['tmp_name'];
            move_uploaded_file($file_tmp_name,"./images/$nomphoto");
        }
    } else {
        echo "cet auditeur s'est dèjà inscrit";    
    }
}
?>
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
9 févr. 2016 à 20:05
Et si tu fais un echo de ta variable $nbre ... qu'est-ce que ça donne ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
10 févr. 2016 à 15:45
cela me retourne 0
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 févr. 2016 à 16:29
C'est que ta requête ne retourne AUCUN résultat ... donc.. c'est normal qu'il créé une nouvelle ligne dans ta table.

Mais..... si toi tu penses que ça ne devrait pas retourner 0 ... c'est qu'il y a un souci au niveau de ta requête.

Donc :
1 - Fais un echo de ta variable $query et colles nous le résultat sur le forum

2 - Utilises le résultat de ce echo pour tester ta requête DIRECTEMENT dans ta BDD et regardes si elle retourne réellement quelque-chose ( un imprime-écran serait le bienvenue.... )
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
Modifié par jordane45 le 10/02/2016 à 18:08
1.resultat du echo $query
SELECT nom_auditeur
           ,prenom_auditeur
           ,email_auditeur
           ,sexe_auditeur
           ,Matricule_auditeur 
FROM auditeur 
WHERE nom_auditeur='kouakou' 
  AND prenom_auditeur='franck' 
  AND email_auditeur='kouakou@yahoo.fr' 
  AND sexe_auditeur='Homme' 
  AND Matricule_auditeur='201602101647-M'

nouveau auditeur ajouté
2.



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
10 févr. 2016 à 17:55
je n'arrive pas coller l'imprime ecran
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 févr. 2016 à 18:05
lorsque tu fais "répondre" surle fourm .... tu cliques sur l'icone image qui se trouve en haut ....
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 févr. 2016 à 18:07
Comme ceci :


0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
10 févr. 2016 à 18:23
voila
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 févr. 2016 à 18:27
dis donc ...
tu m'as répondu

oui j'ai un résultat mais quand je remet les memes info il accepte

dans un précédent message .....
mais .... là .... ... et bien... on est d'accord .... ta requête NE RETOURNE AUCUN RESULTAT !
Donc c'est normal qu'il fasse une insertion !!!!

Non ???!!!!
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48 > jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024
11 févr. 2016 à 09:34
lol j'avais pas bien compris dans ce cas je fais quoi
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020
11 févr. 2016 à 10:14
Est-ce qu'il y a des informations dans ta BDD ??
Si oui... commence par faire ce que je t'ai proposé dans un message précédent ..... NE METS PAS AUTANT DE CHOSES DANS TON WHERE !
Limite ta requête sur l'adresse mail par exemple.
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
11 févr. 2016 à 10:40
ok j'essaye
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
11 févr. 2016 à 11:24
Et surtout .... commence par tester tes requêtes DIRECTEMENT DANS TA BDD avant d'essayer de les mettre dans ton code php
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
Modifié par delavega470 le 11/02/2016 à 11:36
j'ai trouvé mes erreurs c’était ma BD qui ne correspondait pas !! merci encore
0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
11 févr. 2016 à 11:36
Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

Cordialement,
Jordane
0