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

Eléphant du PHP | 88 Messages

23 mai 2007, 16:09

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
Cordialement zaknaou

Avatar du membre
ViPHP
ViPHP | 3008 Messages

23 mai 2007, 16:52

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.

zaknaou.
Invité n'ayant pas de compte PHPfrance

24 mai 2007, 22:22

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'");
}

ViPHP
ViPHP | 5924 Messages

24 mai 2007, 23:19

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

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

25 mai 2007, 07:51

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
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer