php, galleri, användarvänlighet++

Tråden skapades och har fått 9 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Stockholm
  • 2004-01-24 12:15

Hej

Kan inte riktigt bestämma mig för hur jag ska gå till väga när jag ska bygga ett bildgalleri.
Är inte intresserad av att rippa något färdigt superscript för det brukar innebära att man får ett gränssnitt med på köpet som ofta är svårt att ta sig ur (?) ... samt det är ju så kul att skriva koden själv

Men, det är ju aldrig fel att kika på andras kod och få ta del av finesser och tricks och kanske delar av kod.

Jag skulle hur som helst vilja få diskutera lite kring olika sätt att hantera ett bildalbum med användarvänlighet i fokus.

Galleriets funktion:
en gång i veckan så skapas ett nytt album till vilket en unik samling bilder knyts (inga bilder från andra album skall användas).
Hur skulle ni spara dessa bilder? Sidan kommer nog inte ha fler än hundra besökare samtidigt men jag känner ändå att det är omständigt att lagra själva bilderna i en databas. Ser framför mig att bilderna skulle kunna laddas upp via tex ftp till tex img/gallery/<datum> men då brister användarvänligheten direkt.
Borde byta ut ftp mot fräscht gränssnitt på hemsidan. Vad säger ni?
Eller borde bilderna ligga i typ /img/gallery/ där alla bilder ligger löst och sen knyts de till ett album?

Hur ni skulle lösa det här med att skapa album och spara vilka bilder som hör dit och dylikt (bildkommentar/beskrivning).
Arbeta mot databas som gäller?
Vilka bilder som hör till ett album kan ju lätt ordnas genom att bara lägga bilderna i separata mappar och läsa in filerna därifrån.
Men man vill väl troligen ha en liten text som beskriver varje album och då kanske det börjar bli dags att prata databas ändå. Idéer ?

Det ska ligga en liten kommentar till varje bild. Det går ju att göra med små tillhörande .txt-filer i bildmappen vilket kanske kan räknas som användarvänlighet om det är så att man kikar på filerna lokalt (ej via hemsidan). Spontant skulle jag ändå vilja spara bildkommentarer i en tabell fast det blir genast mindre överblickbart för användarna.

Alla tips är av intresse.
Känner att det här blev väldigt rörigt men hoppas det går att få en bild av vad jag avser.

Det verkar som om de flesta som prövat rekommenderar emot att lagra hela bilder i databasen även om det är möjligt och inte alls särskilt svårt. Tydligen ska prestandan inte vara något att hurra för när man gör så.

Angående att ladda upp via ftp och att det skulle vara icke användarvänligt så kan man fråga sig om det är användarvänligt att låta folk ladda upp bilder via ett segt-webb-gui där man inte får någon vettig feedback på hur lång tid det är kvar och där man antingen måste ladda upp en bild i taget (eller i alla fall välja dem en i taget) eller kräva att användaren ska zippa dem först till ett enda arkiv som packas upp på servern med alla problem det innebär.

Jag skulle välja ftp-lösningen där man skapar en mapp med ett namn ÅÅÅÅ-MM-DD eller vad du väljer att kalla dem. Där laddar man sedan upp sina bilder som kan heta vad som helst så länge namnen är unika i den mappen. Sedan kombineras detta med ett skript som kolla bland mapparna och hittar de som lagts till sedan sist. De mappar som lagts till gås igenom och alla bilder däri får var sin post i en databastabell med information som namn (kan automatiskt sättas till filnamnet minus filändelse om du vill men ska inte, tycker jag, behöva vara filnamnet), sökväg plus eventuell meta-information du vill ha till varje bild, typ vem tog bilden, vilka är på bilden om den typen av information är nödvändig.

När varje ny bild fått en post i databasen presenteras dessa för användaren som kan skriva in information om bilderna (om det nu behövs).

Sedan kan du egentligen välja själv hur albumen ska se ut, de kan antingen vara ett album per mapp eller så kan du välja bilder fritt från alla mappar och presentera som ett album, eftersom referenser till bilderna sparas i databasen är inte det ett problem.

Du skulle kunna ha en tabell som heter Album, en som heter Bilder och en relationstabell (många till många) som knyter dem samman.

Angående att göra thumbnails så kan skriptet som först samlar in alla nya bilder göra dessa kanske. Det är upp till dig. Med servlets skulle du kunna ha det som en bakgrundsprocess som gör thumbnails medan användaren skriver in information om bilderna i PHP blir det svårare (om du inte gör en "fullösning" med frames).

Lycka till!

Så för att sammanfatta:

spara bilder som de är, utan text-filer i mappar på servern. Ladda upp bilderna via ftp (snabbt och enligt mig smidigt). Varje bild har en tillhörande post i databasen (den primära nyckeln kan vara mapp/filnamn.xxx). Album kan vara ett per mapp (användaren behöver inte lägga upp album manuellt) eller så kan de vara manuellt utvalda bilder från alla mappar eller både och dvs. alla mappar får egna album plus att folk kan plocka ihop egna.

  • Medlem
  • Stockholm
  • 2004-01-24 18:21

Tack för mycket intressanta tips.

Tror det slutar så här ändå

1. Man laddar upp en hel mapp via ftp

2. Loggar in på hemsidan och skapar ett nytt album och pekar ut mappen man just laddat upp

2.1 iterera igenom alla bilderna i mappen och generera thumbnails
2.2 samtidigt som thumbnails skapas så generera även en post i en databas där det unika fältet skall vara sökvägen till bilden. Dvs tex img/gallery/2004-02-11/001.jpg så man kan hämta in kommentaren till bilden genom att bara filtrera ut från databasen mot sökvägen till den aktuella bilden.

3. Gå igenom alla bilderna en för en och spara en kommentar

( 3.1 spara eventuellt extra info i samma db-post )

Vad för irritationer lyckas jag väcka med följande idé ??

Anledningen till den lite enklare lösningen är att det inte skall finnas något administrativt gränssnitt för att i efterhand kunna ändra vilka bilder som hör till vilket album, and so on. (och då tänker jag inte lägga ner extra tid på det...)

..... ...... ... ... Fast sjutton gubbar.. ångrar mig redan lite.. kan lika gärna trycka in dem permanent i en relationsdatabas där varje album är unikt till mappnamnet (som ändå måste vara unikt då galleri-mapparna ligger i samma mapp).

Men som sagt, tack för mycket intressant inlägg!

Photopost är väldigt smidigt.

Där kan du ladda upp en .zip så packar den upp arkivet, resizar bilderna och skapar ett galleri automatiskt och snabbt. Smidigt!

Photopost kostar iofs över 1000 spänn..

Gallery är ju smidigt eftersom det löst många av problemen som man kan stöta på längs vägen och har avancerade funktioner för uppladdning, kommentarer mm. Och det är gratis. Nackdelen är att man är låst till ett visst gränssnitt, än så länge (innan G2 kommer).

  • Medlem
  • Stockholm
  • 2004-01-25 22:50

Slutade med att jag löste det själv fast genom att kika på "Features" sidan bland de olika projekten.

1.Laddar upp en mapp via ftp

2. via hemsidan knyter man mappen till ett album man skapar (som ligger som en rad i en tabell)

2.1 sidan rabblar igenom bild-filerna och skapar en post i databasen för bilden och sen knyter den bilden till albumet , i databasen givetvis.

3. Den går igenom bild för bild man just lagt in och ber om en kommentar.

Finished

Den enda finess som behövs är att man ska kunna lägga till kommentarer i efterhand, vilket är lätt ordnat. Alla andra superfinesser behövdes inte och struntas därför blankt i

Citat:

Skrevs ursprungligen av Christopher Anderton
Photopost kostar iofs över 1000 spänn..

Med tanke på funktionalitet och hur lång tid det tar att göra ett eget galleri med samma möjligheter anser jag 1000kr vara i princip gratis.

  • Medlem
  • Stockholm
  • 2004-01-25 23:56
Citat:

Skrevs ursprungligen av Björnström
Med tanke på funktionalitet och hur lång tid det tar att göra ett eget galleri med samma möjligheter anser jag 1000kr vara i princip gratis.

:eek:

Vi tänker lite olika helt enkelt

När man gör själv så får man det PRECIS med den funktionalitet man sökte och bättre än så kan det ju inte bli. Då får det ibland vara värt att det tar längre tid än att köpa färdigjort och spara in på tiden.

1
Bevaka tråden