foto's tonen in tabel met max 3 kolommen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Elsa de Leeuw

Elsa de Leeuw

04/03/2006 15:26:00
Quote Anchor link
Hoi,
Ik ben een soort fotogallerie aan maken. Ik heb de afbeeldingen in de database staan. Nu wil ik graag het uitlezen in een tabel met maximaal 3 kolommen en als er meer dan 3 foto's zijn dat het script dan automatisch naar de volgende rij gaat. Kan iemand mij vertellen hoe dit moet?
Alvast hartelijk bedankt!
Groetjes,
Elsa
 
PHP hulp

PHP hulp

14/05/2024 00:17:48
 
Stefan van Iwaarden

Stefan van Iwaarden

04/03/2006 15:45:00
Quote Anchor link
je moet controleren hoeveel foto's je al weergegeven hebt op een regel. ik weet niet precies wat voor functie hiervoor is, die is er dacht ik wel.

maar als je die functie gevonden hebt, dan kun je simpel doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if (//functie == 3)
{
echo('</tr><tr>');
}

?>


dan gaat hij door op de volgende regel.

ik zal eens even kijken of ik die functie kan vinden.
 
Stefan van Iwaarden

Stefan van Iwaarden

04/03/2006 16:03:00
Quote Anchor link
ik kan de functie niet vinden, maar ik zal kijken of ik er zelf een functie voor kan schrijven.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
function volgenderij($aantal,$result)
{

$aantal_obj = mysql_num_rows($result);
$aantal_rij = $aantal_obj / $aantal;
$aantal_rij = ceil($aantal_rij); // afronden naar boven op hele rijen
for ($i=1; $i<=$aantal_rij; $i++)
{

$limit_begin = ($i * 3) - 3
$limit_eind
= $i * 3;
$query = "SELECT * FROM fotos LIMIT ".$limit_begin.",".$limit_eind."";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{

echo('<td><img src="'.$link.'"></td>');
}

echo('</tr><tr>');
}
}

?>


zo, ik weet niet of ik twee parameters mag opgeven bij limit, maar als dat niet zo is gaat dit voorbeeld niet door, dit is op dit moment even het beste wat ik kan bedenken.

de functie moet als volgt gebruikt worden

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$query
= "SELECT * FROM fotos";
$result = mysql_query($query);
$aantal = 3;

volgenderij ($aantal,$result);
?>


het zal misschien niet werken, maar misschien dat iemand kan doorwerken op dit voorbeeld?
Gewijzigd op 04/03/2006 16:07:00 door Stefan van Iwaarden
 

04/03/2006 16:30:00
Quote Anchor link
@Stefan:
LIMIT werkt volgens mij met "start,aantal_records"
en dus niet met begin en eind
 
Elsa de Leeuw

Elsa de Leeuw

05/03/2006 17:31:00
Quote Anchor link
Hoi,
Het lukt nog niet echt, dus hulp is nog steeds van harte welkom.
Elsa
 
- SanThe -

- SanThe -

05/03/2006 19:54:00
Quote Anchor link
Zelf aanpassen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$horiz
=3;    // Dit is het aantal naast elkaar
$start=0;
echo '<table>';
while($row = mysql_fetch_......())    // Hier dus even jouw gegevens invullen
{
    if(($start % $horiz) == 0)
    {

        echo '<tr>';
    }

    echo '<td>';
        // Hier zet je het plaatje of de tekst
    echo '</td>';
    $start++;
    if(($start % $horiz) == 0)
    {

        echo '</tr>';
    }
}

if(($start % $horiz) != 0)
{

    echo '</tr>';
}

echo '</table>';
?>
 
Jan Koehoorn

Jan Koehoorn

05/03/2006 20:06:00
Quote Anchor link
Of bestudeer dit script
 
Elsa de Leeuw

Elsa de Leeuw

05/03/2006 20:48:00
Quote Anchor link
Hoi daar was ik weer. Het lukt nog niet geheel. Ik ben nu bezig met het script van SanThe. Ik krijg alles nu wel in een rij, maar ik krijg nu meer foto's in 1 rij. De rij stopt dus niet bij 3 en gaat niet door naar de volgende regel.
Ik zal hieronder het script plaatsen wat ik tot dusver heb dan is het voor jullie misschien iets makkelijker om aanwijzingen te geven.
Waardeer de hulp enorm.. slijm slijm grinnik.. maar ik zit dus echt met handen in me haar.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
require "./include/functiesrene.lib.php";
require "include/database1.php";
htmlheader("foto schip");

echo "<h1>Foto's</h1><br><br>";

$sitepad= "../rene/upload/";

$schip_id_nr=$_POST['schip_id_nr'];
$sql = "SELECT * FROM afbeelding WHERE schip_id_nr=".$_GET['schip_id_nr']."";
$afbeeldingen = mysql_query($sql);

if (mysql_num_rows($afbeeldingen) > 0) {


while ($rij = mysql_fetch_array($afbeeldingen))
{

$bestandsnaam = $sitepad.$rij["afbeelding_id"].$rij["bestandstype"];
$horiz=3;    // Dit is het aantal naast elkaar
$start=0;
if(($start % $horiz) == 0)
    {

        echo '<tr>';
     }

        echo '<td>';
        echo img_resize($bestandsnaam);
        echo '</td>';
    $start++;
    if(($start % $horiz) == 0)
    {

        echo '</tr>';
    }


if(($start % $horiz) != 0)
{

    echo '</tr>';
}

echo '</table>';


}

}

else {
  echo"Geen afbeeldingen voor dit schip<br>";


}




echo "<br><a href=\"verkopenschepen.php\">TERUG</a><br>\n";
footer();
htmlfooter();
?>
 
- SanThe -

- SanThe -

05/03/2006 20:54:00
Quote Anchor link
Je hebt mijn script niet goed overgenomen.
 
Elsa de Leeuw

Elsa de Leeuw

08/03/2006 21:26:00
Quote Anchor link
Hoi daar was ik weer.
SanThe heel hartelijk bedankt, het is gelukt!!!
Moest er even rustig voor gaan zitten.

Groetjes,

Elsa
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.