Vérifier que les enregistrements existent déjà ?

Eléphant du PHP | 94 Messages

21 sept. 2006, 21:53

Bonjour

A l'aide d'un formulaire htm, je souhaite permettre la saisie de 6 couples de données : 5 x une date et un chiffre.

Cependant, je souhaite m'assurer que l'utilisateur ne tente pas d'insérer des valeurs existantes dans ma table.

Comment et à quel moment puis je faire cette vérification ?
Voila mon code d'insertion des 6 enregistrements
$connexion = connexion(user, pass, bdd, server);

 		for ($i=1;$i<7;$i++)
 		{
 		$d=$_POST['d'.$i];
 		$p=$_POST['p'.$i];
 		
		$requete = "INSERT INTO table (jour, valeur) VALUES ('$d' ,'$p') ";	
		ExecRequete ($requete, $connexion);
		}
Je pourrais faire un select count (*) where jour=$d
et tester si j'ai un retour >0

Mais faut il le faire à chaque passage de la boucle ?
Ou le faire avant ? C'est la que je sèche.

J'ai fait ceci, n'est ce pas un peu lourd ???
<?php
require_once("../inc/constant.php");  
$connexion = connexion(user, pass, bdd, server);
$k=0;

 		for ($i=1;$i<7;$i++)
 		{
 		$d=$_POST['d'.$i];
 		
 		$requete = "select count(*) as compteur from table where jour='$d'";
		$resultat = ExecRequete ($requete, $connexion);
		$test=ObjetSuivant($resultat);
		
		if ($test->compteur > 0)
			{
			$k++;
 		 	}
 		}

echo $k;

		if ($k==0)
		{ 
			for ($i=1;$i<7;$i++)
	 		{
	 		$d=$_POST['d'.$i];
	 		$p=$_POST['p'.$i];	 		 		 	
			$requete = "INSERT INTO tables (jour, valeur) VALUES ('$d' ,'$p') ";	
			//ExecRequete ($requete, $connexion);
			echo $requete;
			}
		}	
		else
		{
		echo " doublons détectés dans la base";
		}

?>
rspir

Eléphant du PHP | 94 Messages

22 sept. 2006, 22:35

Un avis sur mon code ?
rspir