If et else dans boucle while
Résolu
joncavidulienne
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
joncavidulienne Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
joncavidulienne Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un moteur de recherche de plantes par critères et je voudrais afficher un message d'erreur quand il n'y a pas de résultat mais je n'y arrive pas
Voici mon code:
<?php
include("connect_bdd.php");
$types ="";
$couleur="";
$duree="";
$feuillage="";
$exposition="";
if(isset($_POST['types']))
{
$types = htmlentities($_POST['types']);
$couleur = htmlentities($_POST['couleur']);
$duree= htmlentities($_POST['duree']);
$feuillage = htmlentities($_POST['feuillage']);
$exposition = htmlentities($_POST['exposition']);
$req=$bdd->query( "SELECT nom FROM VEGETAUX WHERE codetype=$types AND codeduree=$duree AND codecouleur=$couleur AND codefeuillage=$feuillage AND codeexposition=$exposition");
while($data=$req->fetch())
{
if(!empty($data['nom']))
{
echo "<span class=\"affiche\" style=\"color:green;font-weight:bold;font-size:20px;position:relative;left:250px;top:450px;\"><br><br><a href=\"plantes.php?nom=".$data['nom']."\">".$data['nom']."</a></span><br><br>";
}
else
{
echo "<span class=\"affiche\" style=\"color:red;font-weight:bold;font-size:20px;position:relative;left:250px;top:450px;\"><br><br>Aucune plante ne correspond aux critères choisis</span><br><br>";
}
}
}
?>
Quelqu'un pourrait-il m'aider?
Merci
J'ai un moteur de recherche de plantes par critères et je voudrais afficher un message d'erreur quand il n'y a pas de résultat mais je n'y arrive pas
Voici mon code:
<?php
include("connect_bdd.php");
$types ="";
$couleur="";
$duree="";
$feuillage="";
$exposition="";
if(isset($_POST['types']))
{
$types = htmlentities($_POST['types']);
$couleur = htmlentities($_POST['couleur']);
$duree= htmlentities($_POST['duree']);
$feuillage = htmlentities($_POST['feuillage']);
$exposition = htmlentities($_POST['exposition']);
$req=$bdd->query( "SELECT nom FROM VEGETAUX WHERE codetype=$types AND codeduree=$duree AND codecouleur=$couleur AND codefeuillage=$feuillage AND codeexposition=$exposition");
while($data=$req->fetch())
{
if(!empty($data['nom']))
{
echo "<span class=\"affiche\" style=\"color:green;font-weight:bold;font-size:20px;position:relative;left:250px;top:450px;\"><br><br><a href=\"plantes.php?nom=".$data['nom']."\">".$data['nom']."</a></span><br><br>";
}
else
{
echo "<span class=\"affiche\" style=\"color:red;font-weight:bold;font-size:20px;position:relative;left:250px;top:450px;\"><br><br>Aucune plante ne correspond aux critères choisis</span><br><br>";
}
}
}
?>
Quelqu'un pourrait-il m'aider?
Merci
A voir également:
- While else php
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Retour à la ligne php ✓ - Forum PHP
- Retour a la ligne avec Echo comment faire ? - Forum Webmastering
2 réponses
Salut,
Si tu n'utilises pas mysql ou que tu souhaites que ton code soit compatible avec d'autres SGBD :
Au passage, htmlentities doit être utilisé pour afficher des données en html et surtout pas pour protéger tes données avant de les utiliser en sql.
Bonne journée
Si tu n'utilises pas mysql ou que tu souhaites que ton code soit compatible avec d'autres SGBD :
if ($data = $req->fetch()) { do { echo "<span class=\"affiche\" style=\"color:green;font-weight:bold;font-size:20px;position:relative;left:250px;top:450px;\"><br><br><a href=\"plantes.php?nom=".$data['nom']."\">".$data['nom']."</a></span><br><br>"; } while ($data = $req->fetch()); } else { echo "<span class=\"affiche\" style=\"color:red;font-weight:bold;font-size:20px;position:relative;left:250px;top:450px;\"><br><br>Aucune plante ne correspond aux critères choisis</span><br><br>"; }
Au passage, htmlentities doit être utilisé pour afficher des données en html et surtout pas pour protéger tes données avant de les utiliser en sql.
Bonne journée
joncavidulienne
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
Merci beaucoup pour votre aide . ça marche!!