Afficher les images en fonction de portrait ou paysage

WRInaute occasionnel
Bonjour,
est il possible d'afficher les images en fonction de leur largeur et hauteur ?
Par exemple je voudrait afficher d'abord le images qui sont au format portrait puis ensuit celle au format paysage.

actuellement je les affiche mais elles sont toutes mélangées.

Code:
while( $result = mysql_fetch_array( $requete ) )
{
?>
<img src="photos/<?php echo $result['photoref'];?>" alt="<?php echo $result['ref'];?>" />
<?php
}
Merci de votre aide.
 
WRInaute accro
Re: Afficher les images en fonction de leur taille

à mon avis tu vas devoir renseigner la hauteur et la largeur dans deux champs. Tu peux remplir automatiquement ces champs via un getImageSize. Ensuite il te suffira de classer tes images en fonction du rapport Hauteur / Largeur
 
WRInaute occasionnel
Re: Afficher les images en fonction de leur taille

ok pour recupérer la largeur et la heuteur j'ai fais ça :

Code:
 <?php 
				$chemin = '../images/cartes/' .$result['photoref'];  // chemin de l'image
				$infos_image = @getImageSize($chemin); // info sur la dimension de l'image
				$largeur = $infos_image[0]; // largeur de l'image
				$hauteur = $infos_image[1]; // hauteur de l'image
				?>

Maintenant comment dans mon while je doit faire pour classer les images en fonction ?
 
WRInaute passionné
Re: Afficher les images en fonction de leur taille

Range ton rapport Hauteur / Largeur par image dans ta base de données.

Ensuite, tu fais un SORT BY dans ta requête MySQL.
 
WRInaute accro
Re: Afficher les images en fonction de leur taille

fabrice88> tu recalcules la taille de tes images à chaque affichage ? le jour où ton site fait de l'audience, tu va cramer ton serveur ^^
stocke le en base, tu va accélérer grave la vitesse de chargement de ton site, et donc ton référencement Google
 
WRInaute occasionnel
Re: Afficher les images en fonction de leur taille

arf on est obliger de rentrer les infos dans la base ?
y'a pas plus simple car je me voi mal recréé des champs ...?

Edit : Ok si c bon aussi pour lereferencement je vais donc faire sa avec la base de données.
Merci pour vos conseils.
 
WRInaute accro
Re: Afficher les images en fonction de leur taille

fabrice88 a dit:
arf on est obliger de rentrer les infos dans la base ?
y'a pas plus simple car je me voi mal recréé des champs ...?

Plus simple qu'une boucle faite en trente secondes ? Difficilement. Une image ca ne se classe pas. Tu ne peux classer que ce qui est présent dans une base de données. (de façon simple bien sur). Tu peux toujours calculer les tailles de 500 photos à chaque chargement de la page et ensuite les classer car tu les auras mis dans un tableau. Tu crois que Google fait ca dans Google images ?
 
WRInaute occasionnel
Re: Afficher les images en fonction de leur taille

voilà c'est fait j'ai créé un nouveau champ dans ma base que j'ai nomé en fonction si l'image est un portrati ou un paysage.
Merci pour vos conseils.
A bientôt
 
WRInaute accro
Re: Afficher les images en fonction de leur taille

fabrice88 a dit:
voilà c'est fait j'ai créé un nouveau champ dans ma base que j'ai nomé en fonction si l'image est un portrati ou un paysage.
Merci pour vos conseils.
A bientôt

Oui donc t'as pris une solution qui te limite très fortement dans tes développements futurs. C'est utile d'avoir la taille d'une image, ne serait ce que de la recadrer en conservant les mêmes proportions ou encore de classer les images en fonction de la taille de chacune. Et puis ca te rajoute une tâche à faire toi même : portrait ou paysage ? Non vraiment mauvaise solution à mon avis.
 
WRInaute occasionnel
Re: Afficher les images en fonction de leur taille

Ah ! bon alors quel conseils suivre ?
apres au niveau de mon nouveau champs il se remplit tout seul lorsque j'ajoute une image (je fais un test si la largeur est plus grand que la hauteur alors on met "paysage" dans les champ.
Mais si le fait de passer par sql c'est mieu pour le referencement alors je prefere sauf si vous avez des sugestions.
 
WRInaute accro
Re: Afficher les images en fonction de leur taille

euh on te l'a déjà dit. Deux champs : un pour la largeur, l'autre pour la hauteur.

Ca ne va pas améliorer ton référencement. Ca va juste éviter de le pourrir parce que ton serveur sera sur les genoux 24h/24
 
Discussions similaires
Haut