Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/09/2007, 16h48   #1
Candidat au titre de Membre du Club
 
Inscription : mai 2006
Messages : 42
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 42
Points : 10
Points : 10
Par défaut [SQL] Comparer résultat d'une requête Sql avec php

Hi guys,

Après avoir galérer (un peu), je me tourne vers vous et me traine à vos pieds

Voila, je récupère une variable (d'un Form.) et je voudrais la comparer au contenu d'une table Sql

Et là, je suis largué, alors please help, comment faire

La valeur qui arrive du FORM est $host, et je voudrais qu'elle soit refusée si elle est déja existante dans ma table, et donc interdire son inscription dans cette base

MySql base : customerentry
table : customer
field : host

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php 
 
//variable venant du FORM
$host = $_POST['host']; 
 
 
$db = mysql_connect('localhost', 'root', ''); 
 
mysql_select_db('customerentry',$db); 
 
// Requête SQL 
$sql = 'SELECT host FROM customer'; 
 
// Requête 
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
 
// Boucle 
while($data = mysql_fetch_assoc($req)) 
    { 
 
// on affiche les informations de l'enregistrement en cours 
    echo '<b>'.$data['host'].' </i><br>'; 
    }
 
// déconnection
mysql_close();
 
?>
Merci pour votre aide, et bonne soirée

Nicolas
nicoxweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2007, 16h52   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Il faut faire quelquechose comme ca:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php 
 
//variable venant du FORM
$host = $_POST['host']; 
 
$db = mysql_connect('localhost', 'root', ''); 
 
mysql_select_db('customerentry',$db); 
 
// Requête SQL 
$sql = "SELECT host FROM customer WHERE host='". mysql_real_escape_string($host) ."' "; 
 
// Requête 
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
 
// Je regarde le nombre de résultats
$nbRes = mysql_num_rows($req);
 
if($nbRes == 0)
{
echo "La valeur $host n'existe pas vous pouvez l'ajouter!";
}
else
{
echo "La valeur $host est deja dans la base, choisissez en une autre!";
}
 
// déconnection
mysql_close();
 
?>
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2007, 16h53   #3
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Salut,
personnellement je ferais

Code :
select count(host) FROM customer where host = '$host';
Et en fonction du résultat tu sais si tu peux enregistrer ou non la nouvelle donnée en BD.
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2007, 19h17   #4
Candidat au titre de Membre du Club
 
Inscription : mai 2006
Messages : 42
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 42
Points : 10
Points : 10
Par défaut Comparer requête Sql avec php

Thanks pour votre aide, je teste ça et je reviens !!

Merci encore

A+
nicoxweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2007, 22h46   #5
Candidat au titre de Membre du Club
 
Inscription : mai 2006
Messages : 42
Détails du profil
Informations forums :
Inscription : mai 2006
Messages : 42
Points : 10
Points : 10
Par défaut Comparer résultat d'une requête Sql avec php

OK, ça roule, j'ai rajouté

********************

if($nbRes == 0)

mysql_query("INSERT INTO customer (host) VALUES ('$host')");

********************

pour insérer $host dans la table, et tout baigne

Merci à vous et bonne soirée

Nicolas
nicoxweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h29.


 
 
 
 
Partenaires

Hébergement Web