Gå til innhold

[Løst] lagre bilde med navn fra MySQL DB


Anbefalte innlegg

Emnetittel kan være litt misvisende.

 

Jeg har en nettside som man skal kunne legge til produkter i en database, (dette fungerer toppers) men jeg vil lagre et bilde samtidig, og dette skal bruke det autogenererte produktnummeret som blir laget når jeg legger til et produkt i databasen. Åssen i huleste gjør jeg dette?

 

å jobbe med database er greit, MEN bilder/filer har jeg ingen erfaring fra PHP med.

 

takk for all hjelp!

 

-frank

Lenke til kommentar
Videoannonse
Annonse

Lagre bilde i DB ?

Hvorfor ikke lagre adressen til bildet ?

Evt bruke php til uploade bildet til din egen server for å så lagre hvor bildet ligger ?

Sorry, mente å bruke PHP til å laste opp bildet.

 

her er stegene for hva jeg vil oppnå:

1. lagre infoen om "produktet" i DB (done)

2. laste opp jpg med bestemt størrelse til /images

3. navngi fil fra steg 2 med autogenerert id nr. fra steg 1

 

streng talt er det lett nok å spørre DB om å hente ID nr fra DB for å bruke verdien til filnavn, men opplastingen er det verre med.

 

-frank

Lenke til kommentar

Er vel både ryddigst og kjappest(?) å ha egen kolonne/tabell med url til bildene. Veit ikke helt hva som er god vane, men det er det jeg er lært opp til.

Er nok det enkleste det ja:) Var det laserlars foreslo, og jeg foreslo det (kalte det direkte referanse).

Lenke til kommentar
  • 1 måned senere...

Nettopp jobbet endel med akkurat detta, altså laste opp bilder som skal linkes sammen med et innlegg i databasen...

Jeg begynte med å lagre adressen i en egen kolonne i databasen, men oppdaget fort at dette indeed var en enkel løsning, men ikke en særlig fleksibel løsning, som til slutt resulterte i en tungvind løsning med unødvendig info skrevet til databasen...

 

Så jeg endte til slutt opp med å sette filbanen i PHP scriptet for så å legge på selve filnavnet:

 //  et eksempel på hvordan jeg henter ut bilde til presentasjon:
 $pathOrg =   'path/to/image/products/produkt_'.$get['id'].'.jpg';  //  inne på produktet
 $pathThumb = 'path/to/image/products/thumbs/produkt_'.$get['id'].'.jpg';  //  oversikt over alle produkter

 

Så det jeg gjorde da, var å først laste opp infoen fra formen til databasen slik at en ny rad ble opprettet og tildelt et id-nummer.

Hvis dette gikk smertefritt kjørte jeg videre med scriptet og hentet ut id'n ved bruk av mysql_insert_id() til bruk i bildefilen.

hvis ikke, slettet jeg den insatte raden umiddelbart ved bruk av mysql_insert_id() og sendte tilbake en feilmelding.

På denne måten kunne jeg benyttet denne id'n til å både slette raden og tildele den nye bildefilen en referanse i samme prosess samt slette bildet om noe gikk galt en annen vei også...

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...