Php Affichage image en fonction champ de bdd
Résolu/Fermé
Mano
-
7 mars 2008 à 12:23
Thamior Messages postés 264 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 18 mars 2014 - 7 mars 2008 à 16:19
Thamior Messages postés 264 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 18 mars 2014 - 7 mars 2008 à 16:19
A voir également:
- Php Affichage image en fonction champ de bdd
- Fonction si et - Guide
- Image iso - Guide
- Acronis true image - Télécharger - Sauvegarde
- Image de profil - Guide
- Google recherche par image - Guide
19 réponses
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 12:29
7 mars 2008 à 12:29
Bonjour,
Quelle est la valeur $row avant le while ? et le switch ?
Quelle est la valeur $row avant le while ? et le switch ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 12:40
7 mars 2008 à 12:40
Je crois avoir vu le problème.
Remplace :
switch($row)
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
Par :
switch($row["alerte"])
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
Si ça ne marche pas, fait :
echo "<p>".$row['alerte']."</p>";
Et mets moi ce que ça t'affiche :).
Remplace :
switch($row)
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
Par :
switch($row["alerte"])
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
Si ça ne marche pas, fait :
echo "<p>".$row['alerte']."</p>";
Et mets moi ce que ça t'affiche :).
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 13:49
7 mars 2008 à 13:49
Et avec ça :
switch($row["alerte"])
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
break;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
break;
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
ça fait toujours la même chose ?
switch($row["alerte"])
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
break;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
break;
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
ça fait toujours la même chose ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 13:55
7 mars 2008 à 13:55
Juste avant le swtich, mets :
echo "<p>La valeur est ".$row['alerte']."</p>";
et copie moi ce que ça va t'afficher :).
echo "<p>La valeur est ".$row['alerte']."</p>";
et copie moi ce que ça va t'afficher :).
Cette fois les images sont bien a leur bonne place pourquoi je sais pas...
Par contre pour une ligne ca m'affiche La valeur est *beaucoup :D
Petit printscreen : https://imageshack.com/
Et ca continue encore pas mal les (La valeur est)
Par contre pour une ligne ca m'affiche La valeur est *beaucoup :D
Petit printscreen : https://imageshack.com/
Et ca continue encore pas mal les (La valeur est)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 14:05
7 mars 2008 à 14:05
Nouveau correctif :
$row = mysql_fetch_assoc($result);
while ($row)
{
switch($row["alerte"])
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
break;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
break;
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
$row = mysql_fetch_assoc($result);
}
Avec ça ? (si ça ne marche tjs pas remet l'echo devant le switch).
$row = mysql_fetch_assoc($result);
while ($row)
{
switch($row["alerte"])
{
case ($couleur):
echo '<img src=iconeRouge.GIF>' ;
break;
case ($couleur2):
echo '<img src=iconeOrange.GIF>';
break;
case ($couleur3):
echo '<img src=iconeVert.GIF>';
break;
}
$row = mysql_fetch_assoc($result);
}
Avec ça ? (si ça ne marche tjs pas remet l'echo devant le switch).
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 14:13
7 mars 2008 à 14:13
Tes champs dans la base de données sont tous bien remplis ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 14:19
7 mars 2008 à 14:19
L'affichage est donc normal ^^.
Je te conseil de mettre une valeur par défaut si tu souhaite avoir un affichage :).
Je te conseil de mettre une valeur par défaut si tu souhaite avoir un affichage :).
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 14:27
7 mars 2008 à 14:27
En faite, 3 images par membre au lieu d'une c'est ça ?
Si oui, comment construis tu ton tableau ?
Si oui, comment construis tu ton tableau ?
La table membre contient plusieur colonne dont Alerte qui contient maintenant la valeur par defaut Aucun.
J'ai fais les modifs en suprimant la colone et en la rajoutant ca va maintenant ca affiche bien rien quand c'est marquer aucun.
J'ai ajouter la valeur 'rouge' dans un champ, ca affiche l'image rouge dans chaque ligne.
En ajoutant la valeur orange dans un second champ ca change rien, toujours l'image rouge partout :)
J'ai fais les modifs en suprimant la colone et en la rajoutant ca va maintenant ca affiche bien rien quand c'est marquer aucun.
J'ai ajouter la valeur 'rouge' dans un champ, ca affiche l'image rouge dans chaque ligne.
En ajoutant la valeur orange dans un second champ ca change rien, toujours l'image rouge partout :)
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 14:38
7 mars 2008 à 14:38
Dans ta requête tu dois spécifié le membre concerné et répété autant de fois la requête qu'il y a de membres
Tu vois ?
Tu vois ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 14:48
7 mars 2008 à 14:48
Tu réccupères quelques part l'id/numero du membre ? (avant la requete que tu as cité) ?
Si oui, rajoute : WHERE id = $id dans ta requete.
La variable $id correspondra à l'identifiant du membre.
Si oui, rajoute : WHERE id = $id dans ta requete.
La variable $id correspondra à l'identifiant du membre.
$id = "SELECT id_membre FROM membre";
$sql = "SELECT alerte FROM membre WHERE id=$id";
Mais il aime pas trop ca:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource
J'ai donc faire un mysql error au niveau du $resul et il me dit que c'est une erreur dans ma requete $id = "SELECT...
$sql = "SELECT alerte FROM membre WHERE id=$id";
Mais il aime pas trop ca:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource
J'ai donc faire un mysql error au niveau du $resul et il me dit que c'est une erreur dans ma requete $id = "SELECT...
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:05
7 mars 2008 à 15:05
Tu construis un tableau html avec la liste de tes membres et avec une image symbolisant l'alert c'est ça ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:09
7 mars 2008 à 15:09
Tu as donc une requête avant celle la qui liste la liste de tes membres non ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:15
7 mars 2008 à 15:15
Sélectionne l'id du membre à ce niveau la :) et c'est tant plus tard pour sélectionner l'alerte du membre :).
Comme je t'ai mit plus haut :).
Comme je t'ai mit plus haut :).
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:20
7 mars 2008 à 15:20
Fais voir ta première requête :) histoire que je vois si il y a une erreur :).
La requete recherche pour le listing:
$query_Recordset1 = sprintf("SELECT membre.id, membre.societe, membre.url, membre.nom, membre.tel, membre.alerte, membre.montantdu, membre.id_membre FROM membre WHERE nom LIKE '%s%%' OR url LIKE '%s%%' ", $colnom_Recordset1,$colurl_Recordset1);
ensuite je fais ca : $id = "SELECT membre.id_membre FROM membre";
et dans le code qu'on connait: $sql = "SELECT alerte FROM membre WHERE id_membre = $id";
$query_Recordset1 = sprintf("SELECT membre.id, membre.societe, membre.url, membre.nom, membre.tel, membre.alerte, membre.montantdu, membre.id_membre FROM membre WHERE nom LIKE '%s%%' OR url LIKE '%s%%' ", $colnom_Recordset1,$colurl_Recordset1);
ensuite je fais ca : $id = "SELECT membre.id_membre FROM membre";
et dans le code qu'on connait: $sql = "SELECT alerte FROM membre WHERE id_membre = $id";
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:25
7 mars 2008 à 15:25
Ok je vois.
Ce que as par : $query_Recordset1 te sert à faire ton tableau ?
As quoi correspond membre.id ?
Ce que as par : $query_Recordset1 te sert à faire ton tableau ?
As quoi correspond membre.id ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:34
7 mars 2008 à 15:34
Tu peux donc te servir de ce champ pour ta requête plus bas pour la selection de alerte mais tu dois définir un $id correspondant à un seul membre.
Tu vois ou je veux en venir ?
Tu vois ou je veux en venir ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:41
7 mars 2008 à 15:41
La tu sélectionnes une liste de membres avec un certain nombre de champ pour chacun.
Dans le recordset, ça te sélectionne tous les membres correspondants au critères.
Quand tu vas d'enregistrement en enregistrement, tu mets membre.id_membre dans $id et tu fais ta requêtes alerte :).
Dans le recordset, ça te sélectionne tous les membres correspondants au critères.
Quand tu vas d'enregistrement en enregistrement, tu mets membre.id_membre dans $id et tu fais ta requêtes alerte :).
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 15:50
7 mars 2008 à 15:50
Tu récupères comment les infos de ta requête recordset ?
Thamior
Messages postés
264
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
18 mars 2014
47
7 mars 2008 à 16:19
7 mars 2008 à 16:19
De rien :).
Bonne soirée et bon week end :).
Bonne soirée et bon week end :).
7 mars 2008 à 12:37