04. februar 2007 - 12:26Der er
5 kommentarer og 1 løsning
antal billeder pr linie
Jeg sidder og leger lidt med et lille hjemmelavet photogalleri som jeg er igang med. Jeg vil gerne have at mine billeder vises f.eks. 5 billeder på hver linie. Kan det lade sig gøre?
$bil = mysql_query("SELECT * FROM billeder") or die(mysql_error()); echo "<table>"; $i=0; $antal = 5;//Det antal billeder som skal vises i hver række while ($row = mysql_fetch_array($bil)) { $billede = $row[billede];
jeg har ændret lidt i scriptet. det jeg gerne mere vil have hvis du vil hjælpe er at få vist f.eks 15 billeder pr side i 3 linier... Kan disse 2 nedenstående filer sættes sammen
jeg har disse to filer:
fil 1: <? include("conn.php");
$conn = mysql_connect($host, $user, $pass) or die(mysql_error()); mysql_select_db("photogal",$conn) or die(mysql_error());
$bil = mysql_query("SELECT * FROM gallery") or die(mysql_error()); echo "<table>"; $i=0; $antal = 5;//Det antal billeder som skal vises i hver række while ($row = mysql_fetch_array($bil)) { $file = $row[file];
// Indstillinger $offset = (isset($_GET[offset])) ? $_GET[offset] : 0; // Hvis ikke offset er sat, sættes den til 0 $pr_side = 3; // Antal resultater pr. side
$sql = "SELECT * FROM gallery ORDER BY id DESC LIMIT $offset, $pr_side"; $query = mysql_query($sql) or die(mysql_error()); // Henter poster fra tabellen "dinTabel" while ($row = mysql_fetch_assoc($query)) { echo "<a href='img/$row[file]'><img src='img/$row[file]' width='60px' height='45px'></a><br>"; // Udskriver felter fra tabellen } ?> <hr> <?php $sql = "SELECT COUNT(*) FROM gallery"; $antal = mysql_result(mysql_query($sql), 0) or die(mysql_error()); // Tæller antal poster i tabellen "dinTabel"
if ($offset >= $pr_side) { // Tester om det er nødvendigt med et "forrige-link" $forrige = $offset - $pr_side; // Finder ud af hvor forrige skal starte fra echo "<a href='?offset=$forrige'>Forrige</a> "; // Udskriver link }
echo "Side " . $side . " af " . $antal_sider;
if ($antal > $offset+$pr_side) { // Tester om det er nødvendigt med et "næste-link" $naeste = $offset + $pr_side; // Finder ud af hvor næste skal starte fra echo "<a href='?offset=$naeste'>Næste</a>"; // Udskriver link } ?>
Den sidste del du har lavet virker ikke helt.. den viser bare de samme billeder på hver side ihvertfald hos mig...
men her er den jeg har fået sat sammen.. Så lyset lige pludselig;)
------------------------------------------------------------------------------- <? // Indstillinger include("conn.php"); //Forbinder til database $offset = (isset($_GET[offset])) ? $_GET[offset] : 0; // Hvis ikke offset er sat, sættes den til 0 $pr_side = 9; // Antal billeder pr. side $i = 0; //HVilket billede den skal starte med at vise $antal = 3; //Det antal billeder som skal vises i hver række $tabel = "gallery";
$sql = mysql_query("SELECT * FROM $tabel ORDER BY id DESC LIMIT $offset, $pr_side") or die(mysql_error()); echo "<table>";
while ($row = mysql_fetch_array($sql)) { $file = $row[file];
<?php $sql = "SELECT COUNT(*) FROM gallery"; $antal = mysql_result(mysql_query($sql), 0) or die(mysql_error()); // Tæller antal poster i tabellen "dinTabel"
if ($offset >= $pr_side) { // Tester om det er nødvendigt med et "forrige-link" $forrige = $offset - $pr_side; // Finder ud af hvor forrige skal starte fra echo "<a href='?offset=$forrige'>Forrige</a> "; // Udskriver link }
echo "Side " . $side . " af " . $antal_sider;
if ($antal > $offset+$pr_side) { // Tester om det er nødvendigt med et "næste-link" $naeste = $offset + $pr_side; // Finder ud af hvor næste skal starte fra echo "<a href='?offset=$naeste'>Næste</a>"; // Udskriver link } ?>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.