problème d'affichage dans une boucle

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème d'affichage dans une boucle

Re: problème d'affichage dans une boucle

par Mazarini » 19 mars 2012, 21:57

Il m'a fallu tous les autres post pour comprendre ton problème.

Re: problème d'affichage dans une boucle

par banban55 » 19 mars 2012, 20:03

merci beaucoup ! c'est exactement la bonne solution :D

Re: problème d'affichage dans une boucle

par Mazarini » 19 mars 2012, 19:53

ajoutes un GROUP by id pour n'avoir qu'une photo.

Eventuellement, ajoute les autres colonnes (sauf photo) dans le goup by et mets un min(photo).

Re: problème d'affichage dans une boucle

par banban55 » 19 mars 2012, 19:26

non j'ai deux tables une pour l'annonce et une avec les photos. j'utilise une jointure entre id du véhicule et celui de la photo

Re: problème d'affichage dans une boucle

par bsharpen » 19 mars 2012, 19:22

salut,
inseres-tu plusieurs fois une même annonce si elle possède plusieurs photos?? :roll:

Re: problème d'affichage dans une boucle

par banban55 » 19 mars 2012, 19:09

J'ai pour certain véhicule de la table annonce plusieurs photo


Exemple

le véhicule 1 j'ai 3 photos
Le véhicule 2 j'ai 2 photos
Le véhicule 3 j'ai 1 photo
Le véhicule 4 j'ai 10 photos

j'aimerai juste faire apparaitre les 4 premiers véhicules avec seulement une photo par véhicule( meme si pour certain il y a 3 photos ou plus…)

Re: problème d'affichage dans une boucle

par moogli » 19 mars 2012, 19:00

Ben tu viens de dire le contraire O_o

Je crois qu'il faudrait que tu précise mieux ce que tu veux ;)

@+

Re: problème d'affichage dans une boucle

par banban55 » 19 mars 2012, 18:50

Heu si tu relit ton 1er message tu indique la réponse => limit avec un 1 et non un 4 ;)


@+
Oui avec le LIMIT 1 j'ai un seul résultat… mais j'ai besoin de faire apparaitre les autres résultats….

Re: problème d'affichage dans une boucle

par moogli » 19 mars 2012, 18:46

Heu si tu relit ton 1er message tu indique la réponse => limit avec un 1 et non un 4 ;)


@+

Re: problème d'affichage dans une boucle

par banban55 » 19 mars 2012, 17:02

J'aimerai simplement avoir l'affichage d'une seule photo au lieu de toutes les photos...

Re: problème d'affichage dans une boucle

par xTG » 19 mars 2012, 16:55

Et c'est quoi le problème ?
Le fait que tu récupères deux autres photos alors que la première te suffit ?

Tu peux la sauvegarder dans une variable si ce n'est que ça.
$photo = null;
while( $data = mysql_fetch_array($listing) ){
  if( $photo === null )
    $photo = $data['photo'];
  echo '<img src="' . $photo . '" alt="" />';
}

problème d'affichage dans une boucle

par banban55 » 19 mars 2012, 16:48

Bonjour à vous.

Je rencontre un problème lors de l'affichage de l'affichage du résultat de ma requête. Je vous explique en quelque mot mon soucis.
J'ai deux tables, une table annonce avec les détails de l'annonce et une table photo_vehicule qui contient toutes les photos en relation avec la l'annonce. Seulement quand je demande l'affichage de l'annonce via ma requête, elle m'affiche les autres photos dispo pour la même annonce. Ensuite je boucle simplement avec un "while" et je LIMIT à 4 enregistrements seulement.

Exemple:
le véhicule numéro 1 à 3 photos dans la table photo_vehicule -> il m'affiche donc 3 résultats avec 3 photos
le véhicule numéro 2 à 1 photo dans la table photo_vehicule -> il m'affiche bien 1 seul résultat car il y a 1 photo

aperçu
Image

ma requête en question:
SELECT DISTINCT id_annonce, marque, modele, prix_annonce, date_annonce, km_annonce, fichier_pv
FROM annonce, marques, modeles, photo_vehicule
WHERE id_type_annonce =2
AND id_marque_annonce = marques.id
AND id_modele = modeles.id
AND id_annonce = id_vehicule_pv
ORDER BY  `fichier_pv` ASC 
LIMIT 4
mon fichier php
$sql = "SELECT DISTINCT id_annonce, marque, modele, prix_annonce, date_annonce, km_annonce, fichier_pv
FROM annonce, marques, modeles, photo_vehicule
WHERE id_type_annonce =2
AND id_marque_annonce = marques.id
AND id_modele = modeles.id
AND id_annonce = id_vehicule_pv
ORDER BY  `fichier_pv` ASC 
LIMIT 4" ;

            $listing = mysql_query($sql);
			
            if (mysql_num_rows($listing))
            {
                require_once '_inc/Values.php';

                
				while ($row = mysql_fetch_array($listing))
					{
				echo '<div id="affichage_fiche_neuf">';
                echo '<table class="fiche_neuf">';
					
				   echo '<tr>';
						echo '<td class="titre_fiche_neuf" width="100%" valign="top"><a class="titre_fiche" href="vehicule.php?id='. $row["id_annonce"] .'">'. $row["marque"] .'</br>'. $row["modele"] .'</a></td>';
					echo '</tr>';
					echo '<tr>';
						echo '<td class="km_fiche_neuf" width="100%" valign="top">'. $row["km_annonce"] .' kms</td>';
					echo '</tr>';
					echo '<tr>';
						echo '<td class="prix_reel_neuf" width="100%" valign="top">'. $row["prix_annonce"] .' €</td>';
					echo '</tr>';
                    echo '<td>';
                        echo '<a rel="lightbox" href="./photos/fullsize/'. $row["fichier_pv"] .'" title="'. $row["marque"] .''. $row["modele"] .'"><img class="apercu" src="./photos/min/'. $row["fichier_pv"] .'" /></a>';
					echo '</td>';
                    echo '</tr>';
                echo '</table>';
				echo '</div>';
				}
            }