Page 1 sur 1

Si dans bdd 1 champs nom_fenetre = $name_fen alors requête.

Posté : 23 mai 2007, 16:09
par zaknaou
Bonjour...

Voici un bout de code :
if( ***** )
{
// ici je meterrai un requête...
}
Comment faire pour exprimer cette phrase :

Si aucun enregistrement du champs "nom_fenetre" dans la bdd, à pour valeur "$name_fen" alors...

Merci

Posté : 23 mai 2007, 16:52
par charabia
Avant la requête que tu mets dans ton IF, tu dois en faire une autre avant qui va te permettre de récupérer les données de ta table et de pouvoir ainsi les comparer avec la donnée envoyé via le formulaire.

Un peu comme les pages de connexion qui vérifie si le login est présent dans la table par exemple.

Posté : 24 mai 2007, 22:22
par zaknaou.
Un peu comme ça :
$sql = mysql_query("SELECT nom_fenetre FROM fenetre WHERE nom_fenetre = '$nom_fenetre' AND id = '$id'");

while ($sql_var = mysql_fetch_array($sql));

$sqls = $sql_var[0];

echo $sqls;

if($sqls == "")
{
mysql_query("INSERT INTO fenetre (id,nom_fenetre,etat) VALUES ('$id','$nom_fenetre','$type_fenetre')");
}
elseif($sqls != "")
{
mysql_query("UPDATE fenetre SET etat = '$type_fenetre' WHERE nom_fenetre = '$nom_fenetre' AND id = '$id'");
}

Posté : 24 mai 2007, 23:19
par Sékiltoyai
Je pense que tu devrais te tourner vers les requètes REPLACE, qui te feraient économiser une requète et quelques lignes : http://dev.mysql.com/doc/refman/5.0/fr/replace.html

Posté : 25 mai 2007, 07:51
par zeus
Attention, un requête REPLACE se base sur les doublons de clé primaires.
Quand je vois cette condition WHERE : "nom_fenetre = '$nom_fenetre' AND id = '$id'", je me dit qu'il faut que la clé primaire de la table soit (nom_fenetre, id) pour pouvoir utiliser une requête REPLACE