Problème d'insertion des données en php

Résolu
Bonjour,j'ai une question est ce qu'il qlq qui m'aide
comment insérer un enregistrement dans une base de donnée sql (easyphp sous windows) à partir d'une formulaire a condition que l'enregistrement est n'existe pas dans la bdd
dans le code php j'utilise la requête suivante:
$sql= mysql_query("INSERT INTO etudiant(nom,prénom ,date_n,lieu_n ,adresse,faculté,domaine ,année_etud,spécialité) VALUES('$nom',' $prénom' ,'$date_n','$lieu_n ','$adresse','$faculté','$domaine' ,'$année_etud','$spécialité')
Where nom,prénom not exists (select * from etudiant where ((etudiant.nom=$nom)and (etudiant.prénom=$prénom )))");

et le resultat est le suivant (un erreur)

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Where nom,prénom not exists (select * from etudiant where ((etudiant.nom=fgf)a' at line 2
Configuration: windows
Firefox 3.0.3

5 réponses

  1. Bonjour,

    Tu peux faire un contrôle avec un SELECT count(*).

    Exemple:
    $sql='SELECT count(*) FROM table WHERE nom="'.mysql_real_escape_string($_POST['nom']).'" AND prenom="'.mysql_real_escape_string($_POST['prenom']).'"';
    $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
    $nb = mysql_fetch_array($req);
    
    if($nb[0] >= '1'){echo'<p>Ce membre existe déjà.</p>';}
    
    else{
    $sql = 'INSERT INTO table VALUES("", "'.mysql_real_escape_string($_POST['nom']).'", "'.mysql_real_escape_string($_POST['prenom']).'")';
    }
    1. Si ton problème est résolu, change le statu (en haut) en résolu.
      1. j'ai une question est ce qu'il qlq qui m'aide
        comment insérer un enregistrement dans une base de donnée sql (easyphp sous windows) à partir d'une formulaire a condition que l'enregistrement est n'existe pas dans la bdd
        dans le code php j'utilise la requête suivante:
        $sql= mysql_query("INSERT INTO expert(parti1,partie2 ,juge,vil) VALUES('$par',' $part' ,'$ju','$vil')

        et le resultat est le suivant
        les données sont enregitreées mais à la base il ne sons pas enrigester svp dite moi quel est la problème