/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Frem/Tilbage knapper i billedgalleri
Fra : Mikkel Jakobsen


Dato : 30-12-06 07:43

Hej Ng.

Jeg har et Billed galleri hvor jeg bruger Mysql og PHP

Hvis jeg feks vælger et billed fra galleriet 'julen 2006' får jeg
vist
billedet på en side der hedder visbillede.php (det er fint, alt
virker som det skal)

se http://www.bonzai.adsl.dk/galleri/

Nu kunne jeg godt tænke mig en frem / tilbage knap (eller link)

Ikke en knap som går 1 side tilbage i browseren, men en knap som
vælger det foregående eller det næste billede i rækken af
billeder i galleriet.

Id__Galleri______Billede
1___julen 2006__im01.jpg
2___julen 2006__im02.jpg
3___påske 2005_im17.jpg
4___julen 2006__im05.jpg

Er der nogen der har en ide?

Mikkel



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Arne Feldborg (30-12-2006)
Kommentar
Fra : Arne Feldborg


Dato : 30-12-06 08:57

Mikkel Jakobsen <mikkel@bonzai.adsl.dk> skrev 30 Dec 2006 06:42:45 GMT

>Ikke en knap som går 1 side tilbage i browseren, men en knap som
>vælger det foregående eller det næste billede i rækken af
>billeder i galleriet.
>
Det er da rimeligt simpelt. Hvis du aktuelt viser billedet
http://www.bonzai.adsl.dk/galleri/visbillede.php%20?visid=1026

så vil linket til foregående hedde
http://www.bonzai.adsl.dk/galleri/visbillede.php%20?visid=1025

og linket til næste vil hedde
http://www.bonzai.adsl.dk/galleri/visbillede.php%20?visid=1027

Du skal så naturligvis holde styr på hvor du har første og sidste
billede i en serie, så du ikke sender brugeren ud ad et tomt link.

Se evt:
http://hammerum-herred.dk/tingbog/vis_bog.php?nr=21&dir=B79-04

--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Mikkel Jakobsen (30-12-2006)
Kommentar
Fra : Mikkel Jakobsen


Dato : 30-12-06 09:49



> Mikkel Jakobsen <mikkel@bonzai.adsl.dk> skrev 30 Dec 2006 06:42:45 GMT
>
> >Ikke en knap som går 1 side tilbage i browseren, men en knap som
> >vælger det foregående eller det næste billede i rækken af
> >billeder i galleriet.
> >
> Det er da rimeligt simpelt. Hvis du aktuelt viser billedet
> http://www.bonzai.adsl.dk/galleri/visbillede.php%20?visid=1026


>
> så vil linket til foregående hedde
> http://www.bonzai.adsl.dk/galleri/visbillede.php%20?visid=1025
>

Ja, jeg forstår godt hvad du mener.
Men problemet er at billedet med Id 1025, ikke behøver at være
i galleriet med 'julen 2006' men måske er i galleriet 'fest hos vennerne
2004'
så vil jeg jo få vist et forkert billede.

Id værdierne kommer ikke i rækkefølge.

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Arne Feldborg (30-12-2006)
Kommentar
Fra : Arne Feldborg


Dato : 30-12-06 16:32

Mikkel Jakobsen <mikkel@bonzai.adsl.dk> skrev 30 Dec 2006 08:48:40 GMT


>Ja, jeg forstår godt hvad du mener.
>Men problemet er at billedet med Id 1025, ikke behøver at være
>i galleriet med 'julen 2006' men måske er i galleriet 'fest hos vennerne
>2004'
>
Når du generer feks. siden:
http://www.bonzai.adsl.dk/galleri/galleridetaljer.php%20%20%20?visgalleri=Gerts%20fodselsdag%2014%20januar%20&&%20aar=2006

Så¨har du jo navnene på alle bileder fra lige netop denne fest (ellers
kunne du jo ikke lave links til dem).

Jeg formoder du søger i databasen på alle de poster der matcher et
givent søgeord, og så læser reslutatet ind i et array.?

Det er præcis samme metode du skal bruge på siden "vis_billede.php",
idet du dog viser det valgte billede og laver links til det foregående
og til det næste.

Alternativt kunne du lave en ekstra tabel der kun indeholder navnet
(eller er fortløbende nummer) på hver gruppe og så id-nummrene på de
billeder der hører til denne post. Men medmindre det er meget store
mængder af billeder du arbejder med vil du næppe få nogen større gevinst
ud af det.


--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Michael Weber (30-12-2006)
Kommentar
Fra : Michael Weber


Dato : 30-12-06 10:15


"Mikkel Jakobsen" <mikkel@bonzai.adsl.dk> skrev i en meddelelse
news:45960a65$0$49202$14726298@news.sunsite.dk...
> Hej Ng.
>
> Jeg har et Billed galleri hvor jeg bruger Mysql og PHP
>
> Hvis jeg feks vælger et billed fra galleriet 'julen 2006' får jeg
> vist
> billedet på en side der hedder visbillede.php (det er fint, alt
> virker som det skal)
>
> se http://www.bonzai.adsl.dk/galleri/
>
> Nu kunne jeg godt tænke mig en frem / tilbage knap (eller link)
>
> Ikke en knap som går 1 side tilbage i browseren, men en knap som
> vælger det foregående eller det næste billede i rækken af
> billeder i galleriet.
>
> Id__Galleri______Billede
> 1___julen 2006__im01.jpg
> 2___julen 2006__im02.jpg
> 3___påske 2005_im17.jpg
> 4___julen 2006__im05.jpg
>
> Er der nogen der har en ide?
>
> Mikkel
>
>
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials

Måske...men MySQL og php er ikke lige min stærke side..men alligevel...

Id__Galleri______Billede
...
17___julen 2006__im34.jpg <- forrige
19___påske 2005__im02.jpg
23___julen 2006__im09.jpg <- nuværende
36___påske 2005_im56.jpg
48___julen 2006__im67.jpg < næste
....

Måske hvis du formulere dit problem således :

Hvis nuværende billede i galleri "julen 2006" er billedet med Id = 23,
hvordan finder man så Id = 17 (forrige billede d.v.s. første række med Id <
23 og Galleri = "julen 2006" ) og
Id = 48 (næste billede d.v.s. første række med Id > 23 og Galleri = "julen
2006" ) ?

Er det så kernen i dit (sql) problem ?

MySQL har en "Limit" funktion, d.v.s. der kan begrænse antallet af rækker,
der hentes.
MySQL har vist også ASC (Ascending) og DESC (Descending).
(tjek manualen)


Med venlig hilsen
Michael Weber



Mikkel Jakobsen (30-12-2006)
Kommentar
Fra : Mikkel Jakobsen


Dato : 30-12-06 17:59

Tak for de mange svar...

Jeg er kommet frem til noget i stil med nedenstående.
Det virker også fint nok, det giver en masse link som henviser
til resten af billederne i galleriet.

Men det ser ikke så fint ud når der er mange
billeder i galleriet. Det var derfor jeg var gerne ville
have frem/tilbage knapper/links.

Har også kigget lidt på limit funktionen i mysql,
men jeg tror mere på noget med et arry der lægges 1 til
hele tiden, men jeg er ikke sikker.




### Test på frem / tilbage knap ###

mysql_connect("","","") or die ("Kan ikke connecte");

$x = 1;
$result2 = mysql_db_query($db, "SELECT id FROM Billede_galleri where
galleri='$Galleri' and aar='$aar' ") or die ("Kan ikke finde
galleri");
while ($raekke2 = mysql_fetch_array($result2)) {extract($raekke2);
print "<a href='visbillede.php?visid=$id'> Vis nr $x </a>";
$x ++;

}



se evt.

http://www.bonzai.adsl.dk/galleri/visbillede.php%20?visid=906


Mikkel

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Arne Feldborg (31-12-2006)
Kommentar
Fra : Arne Feldborg


Dato : 31-12-06 16:56

Mikkel Jakobsen <mikkel@bonzai.adsl.dk> skrev 30 Dec 2006 16:58:43 GMT

>Tak for de mange svar...
>
>Jeg er kommet frem til noget i stil med nedenstående.
>Det virker også fint nok, det giver en masse link som henviser
>til resten af billederne i galleriet.
>
Istedet for at vise billede og udskrive links løbende skal du bare læse
alle billeder ind i et array, før du gør noget andet.

Når du så displayer feks. post 7 laver du tilbage og frem links til
henholdsvis post 6 og 8.

Pointen er bare, at istedet for at overføre navnet på det ønskede
billede overfører du kategori og billedets plads i Array'et. Så behøver
du slet ikke spekulere på billedernes navne for at lave tilbage / frem
links, men indsætter blot talværider på henholdsvis een lavere og een
højere.

--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Bruno Christensen (30-12-2006)
Kommentar
Fra : Bruno Christensen


Dato : 30-12-06 18:33

On 30 Dec 2006 06:42:45 GMT, Mikkel Jakobsen wrote:

> Id__Galleri______Billede
> 1___julen 2006__im01.jpg
> 2___julen 2006__im02.jpg
> 3___påske 2005_im17.jpg
> 4___julen 2006__im05.jpg
>
> Er der nogen der har en ide?

Personligt ville jeg navngive det først galleri "internt" som "10000",
billederne i dette galleri navngives som 10001, 10002 etc.

Næste galleri kaldes "internt" 11000 osv, så er der plads til X antal
gallerier med hver ca. 1000 billeder.

Du sorterer alligevel billederne i gallerier, så kan du ligesågodt navngive
dem med et ID der er unikt, evt kan du supplere med en kort beskrivelse
"Julen 06, tante Anne og børnene".

--
Med Venlig Hilsen
Bruno Christensen


Dan Storm (30-12-2006)
Kommentar
Fra : Dan Storm


Dato : 30-12-06 20:48

Mikkel Jakobsen skrev:
> Id__Galleri______Billede
> 1___julen 2006__im01.jpg
> 2___julen 2006__im02.jpg
> 3___påske 2005_im17.jpg
> 4___julen 2006__im05.jpg
>

Personligt så er mit minigalleri bygget op med to tabeller.
en ligesom den du har der
( id | gid | filename )
og så min gid
(gid | galleryname )

gid er istedet for at have gallerinavnet, så det kan du jo passe til
efter behov...

Koden jeg bruger er (med det overflødige klippet ud);

<?
$gid = $_GET['gid'];
$id = $_GET['id'];
$next = $id+1;
$prev = $id-1;


$query = mysql_query("SELECT * FROM galleri WHERE gid='".$gid."' ORDER
BY id ASC");
if($id != 1)
   echo '<a
href="'.$_SERVER['PHP_SELF'].'?gid='.$gid.'&id='.$prev.'">Forrige</a> ';

if($id != mysql_num_rows($query))
   echo '<a
href="'.$_SERVER['PHP_SELF'].'?gid='.$gid.'&id='.$next.'">Næste</a>';


echo '<br /><img src="'.mysql_result($query, $prev, "filename").'"
alt="billede" />';

?>

Så kan du vel selv lige lave de nødvendige kontroller og ændringer...


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste