mysql_num_rows()!=0, écrire ce résultat une seule fois
Bonjour,
j'espère être dans le bon forum même si mon problème mélange un peu d'ajax, de php et de SQL / MySQL.
Je dois entrer dans ma base : des contacts, qui peuvent avoir plusieurs numéros de téléphone (un type et un n° pour chaque n°). Ces numéros sont écris dans des <input> de type text, et le name de chaque <input> est créé via Ajax :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
if (a%2==0)
{
// Input où on écrira le type du téléphone
input.setAttribute('name',"type"+window['i']);
}
else
{
// Input où on écrira le n° de téléphone
input.setAttribute('name',"tel"+window['i']);
window['i'] = window['i']+1;
} |
On ne sait pas à l'avance combien de numéros de téléphone seront entrés, donc on peut avoir "n" fois ces deux champs type et tel.
Je récupère ensuite les valeurs de chacun de tous les champs type et tel via mysql et php :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
$i=0;
// On ne regarde que sur un champ puisqu'ils fonctionnent 2 par 2
while (isset($_POST['type'.$i]))
{
$type = $_POST['type'.$i];
$tel = $_POST['tel'.$i];
echo 'type '.$type.' tel '.$tel;
// On regarde si le numéro de téléphone n'existe pas déjà
$req_exi = mysql_query("SELECT num_tel FROM telephone WHERE num_tel='".$tel."';");
$nbexi = mysql_num_rows($req_exi);
if ($nbexi != 0)
{
echo 'Le téléphone '.$tel.' existe déjà dans la base.';
}
else je fais ma requête SQL d'insertion |
Et voila le problème : au niveau du if, je vois bien si le téléphone existe déjà dans la base, mais ça me l'affiche sans s'arrêter sur ma page, comme dans une boucle infinie.
Et je ne vois pas comment faire pour que si $nbexi est différent de 0 (donc que le téléphone existe dans la base), on affiche une seule fois sur la page 'Ce numéro existe déjà'.
Une aide serait la bienvenue :D