INSERT INTO Customers (FirstName, Address, Phone)
SELECT * FROM (SELECT '$firstName', '$address', '$phone') AS tmp
WHERE NOT EXISTS (
SELECT FirstName from Customers WHERE FirstName= '$firstName'
) LIMIT 1;
Cela empêchera en fonction du prénom, vous pouvez utiliser toutes ces colonnes pour vérifier, je suppose que la colonne correspondante doit être l'e-mail, vous pouvez l'utiliser.
Je viens d'ajouter les paramètres dans la requête pour que vous ayez une idée, utilisez la liaison de paramètres pour éviter l'injection sql.
OU
select * from customers where .... //
Obtenir la taille du jeu de résultats et si size > 0
cela signifie qu'il y a déjà une ligne, donc ne l'insérez pas.
Instruction SQL extraite de MySQL :Insérer un enregistrement si n'existe pas dans le tableau et modifié.