Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/12/2011, 21h24   #1
Membre du Club
 
Inscription : janvier 2007
Messages : 196
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 196
Points : 54
Points : 54
Par défaut Nouveau tableau PHP

Bonjour, je vous écris car je récupere des images depuis un dossier, et ce que je voudrais c'est de faire un tableau propre en limitant le nombre de photo par ligne , j'ai essayer avec le script qui permet ce genre de chose, mais je n'y suis pas arrivé voilà la page qui récuperes les images d'un dossier


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
 
<?php
session_start();
include("../mysqlcon.php");
include("../recuperation.php");
 
$nomdudossier = $_GET["namedos"];
 
if(isset($_GET["idcitoyen"])) {
 
$idg = $_GET["idcitoyen"];
} else {
 
$idg = $idcon;
}
?>
<?
 
$urlphoto = 'Album/'.$idg.'/'.$nomdudossier.'/';
 
 
 
if (is_dir($urlphoto))
{
	$dossier = opendir($urlphoto);
	$nb = 0;
	while ($Fichier = readdir($dossier))
	{
		if ($Fichier != "." AND $Fichier != ".." AND (stristr($Fichier,'.gif') OR stristr($Fichier,'.jpg') OR stristr($Fichier,'.png') OR stristr($Fichier,'.bmp')))
		{
			// Hauteur de toutes les images
 
			$taille = getimagesize($urlphoto."/".$Fichier);
if($taille[0] < 300) {
$h_vign = $taille[0];
} else {
$h_vign = 300;
}
 
 
			$reduc  = floor(($h_vign*100)/($taille[1]));
			$l_vign = $h_vign/2;;
 
			echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';
			echo '<img style="float:left;border:solid #125 5px; margin:2px;" src="', $urlphoto, '/',$Fichier, '" ';
			echo "width='$l_vign' height='$h_vign'>";
			echo "</a>&nbsp;";
			$nb += 1;
		}
	}    
?>
<h2><? echo $nb; ?></h2>
<?
	closedir($dossier);
	if ($nb == 0)
	{
		 echo'Pas d\'images.';
	}	
}
else
{
	echo' Le répertoire spécifié n\'existe pas.';
}
 
 
?>
et le code sur lequel j'essaye de m'inspiré pour réalisé ce fameux tableau :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
 
<?php
 
 
echo '<table>'; 
// On récupère le résultat de la requête SQL de sélection des données sur les navigateurs
$resultat = mysql_query("Select * from design"); 
// Nombre maximum de lignes souhaitées
$max_colonnes = 4; 
// On compte le nombre de résultat
$nb_resultat = mysql_num_rows($resultat); 
// On veut un maximum de 2 colonnes donc on calcul le nombre de colonnes en arrondissant à l'entier supérieur
$nb_lignes = ceil($nb_resultat / $max_colonnes); 
// On cré un tableau par ligne
for($i = 1; $i <= $nb_lignes; $i++)
{
     ${'lign'.$i} = array();
}
 
// On initialise la ligne en cours à 1, première ligne
$ligne_en_cours = 1; 
// On initialise le nombre de colonne à 1 qui va nous servir de compteur de colonne
$nb_colonnes = 1; 
// On parcourt le tableau $resultat de la requête et on stock chacune des lignes dans le nouveau tableau $tab
while($tab = mysql_fetch_array($resultat))
{  
  // On insère les résultats dans les tableaux créés ci-dessus
  array_push(${'lign'.$ligne_en_cours}, $tab['nom_image']);  
  // On vérifie si l'on est pas au maximum de ligne souhaité afin de revenir à la première ligne
  if($ligne_en_cours == $nb_lignes)
  {
     $ligne_en_cours = 1;     
     // On passe à la colonne suivante
     $nb_colonnes++;     
  // On passe à la ligne suivante s'il reste suffisemment de colonnes pour arriver au $max_colonnes
  // autrement, on laisse l'insertion dans la ligne 1
  } elseif($ligne_en_cours != $nb_lignes && ($nb_resultat - $nb_colonnes) >= $max_colonnes) {
       $ligne_en_cours++;
  }
}
 
// On commence l'affichage ligne par ligne
for($i = 1; $i <= $nb_lignes; $i++)
{
  if($i != 1)
  {
       echo'</tr>';
  }
  echo'<tr>';  
  // On parcourt le tableau de la ligne pour son affichage
  foreach(${'lign'.$i} as $lign)
  {
 
$sql_des = mysql_query("Select * from design where nom_image='$lign'");
$sql_d = mysql_fetch_array($sql_des);
 
$idnumero = $sql_d["id"];
 
?>
<td><input type="radio" name="design" id="<? echo $idnumero; ?>" value="<? echo $idnumero; ?>"><br><a href="../blog/skin/<? echo $lign; ?>" rel="lightbox[roadtrip]" title="<?php echo $lign; ?>"><img src="../blog/skin/<?php echo $lign; ?>" height="150" width="150" ></a><br></td>
<?php
  }
}
echo'</table>'; ?>
merci d'avance a tous ceux qui m'aiderons
toulousain3117 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 08h37   #2
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 994
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 994
Points : 5 787
Points : 5 787
Envoyer un message via Skype™ à jreaux62
Bonjour,
-> Affichage de données dans un tableau HTML
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h09.


 
 
 
 
Partenaires

Hébergement Web