[PHP/MYSQL] Planche contact

Mon but est le suivant: faire une planche contact. Qu’est-ce que j’entend pas là? Une largeur fixe (750px) et des photos qui se mettent à l’intérieure par colonnes et par ligne, centrée verticlament et horizontalement.
En outre, il faut un tableau.

Le problème est le suivant: toutes les images n’ayant pas la meme largeur/hauteur (portrait ou paysage), je ne peux prédire a l’avance quel sera le nb de colonnes nécéssaire.

Toutes mes images viennent d’une db (mysql).

Donc il faudrait trouver une solution pour calculer dynamiquement le nb de colonnes nécéssaire pour avoir un vide de 15px de chaque coté de chaque photos

Voila, j’éspère avoir été clair

merci d’avance

titib

personne n’a d’idée?

peut etre procéder en deux temps

une premiere requete qui te donne max(hauteur) et max(largeur)

à partir de là tu en déduis combien de colonnes tu peux faire (peut etre même que max(hauteur) on s’en cogne en fait :p)
et ensuite la requete classique pour afficher les images

je procederai de la facon suivante
redimension des images a la meme taille en largeur
interrogation de la base avec un while et a chaque passage creation d’une cellule content l’image avec une dimension de 15px supplementaire et arrive en fin de ligne un modulo pour passer a la ligne suivante et ainsi de suite

la fonction que j’utilise

appel de la fonction :
tu declare$ $sm a la valeur que tu desire

Rimage($image,$sm)
et apres il ne reste plus qu’a faire une boucle pour ressortir tes infos et genere ton tableau a la sortie avec un modulo par exemple pour passer a la ligne suivante

ce n’est pas envisageable de redimensionner les images à la meme tailles en largeur!
J’aurai pls largeur, c’est ma donnée de départ… Ma question: est-ce possible en ses termes?

quand tu dis plusieurs largeurs, ca veut dire 2 largeurs différentes (portrait/paysage, mais tous les portaits ont la meme largeur et tous les paysages aussi? - en gros tu as une taille d’image, qui peut etre soit orienté de 2 facons), ou chaque image à sa propre largeur?

ma proposition plus haut ne va pas?

En fait, il y a une infinité de largeur possible. Je m’explique
L’image mise en ligne peu avoir un format quelconque et est redimensionnée proportionellement avec le plus grand coté qui fait 150. Et vu que les images mises en lignes sont de ratio variable…

la seule manière que je vois ca serait un système du genre:

  • je séléctionne toutes mes images que je parcour avec un while( du début à la fin)
  • a chaque image, je mesure la largeur et je l’ajoute à une variable, et j’ajoute le code de l’image dans une variable $return.
  • lorsque cette variable atteind une mesure limite (ex: 750px), je divise 750/variable et j’arrondit au nb inférieure. j’obtient donc le nb de colonne
    j’affiche alors mes images
    echo ‘’. $return .’’;
  • je met à zero ma variable return et ma variable contenant les largeur

et cela, jusqu’à ce que ma boucle while soit finie…

je vois pas d’autre solution.