Hoe krijg je een image uit een database?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bob Kresno

Bob Kresno

06/10/2015 15:59:40
Quote Anchor link
Ik heb een leuke database gemaakt alleen ik heb geen idee hoe je een afbeelding op een pagina krijgt.
Wat hij bij mij doet is letterlijk het pad van de afbeelding neerzetten.

Kan iemand mij helpen? Alvast bedankt :)
 
PHP hulp

PHP hulp

21/11/2024 22:58:50
 
Joni Fleischer
Moderator

Joni Fleischer

06/10/2015 18:55:48
Quote Anchor link
Je moet base64 codering gebruiken.

Maar waarom zou je dat willen? Dat maakt je database onnodig zwaar.
Je kan beter gewoon plaatjes in mappen stoppen.


Toevoeging op 06/10/2015 18:58:16:

Maar wil je het toch echt doen:

http://kennykee.com/92/saving-image-to-database-using-php/
Gewijzigd op 06/10/2015 18:59:37 door Joni Fleischer
 
- Mark -

- Mark -

06/10/2015 19:06:26
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<img src="<?php echo $var_met_daarin_de_link_van_de_afbeelding; ?>" >
 
Marthijn Buijs

Marthijn Buijs

06/10/2015 19:12:45
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<img src="data:image/png;base64,[base64 van je image]" />
Gewijzigd op 06/10/2015 21:28:08 door Marthijn Buijs
 
Johan de wit

johan de wit

06/10/2015 22:00:09
Quote Anchor link
Als hij zelf gemaakte CMS heeft dan moet hij dat wel doen, neem webshop als een voorbeeld.
Joni Fleischer op 06/10/2015 18:55:48:
Je moet base64 codering gebruiken.

Maar waarom zou je dat willen? Dat maakt je database onnodig zwaar.
Je kan beter gewoon plaatjes in mappen stoppen.


Toevoeging op 06/10/2015 18:58:16:

Maar wil je het toch echt doen:

http://kennykee.com/92/saving-image-to-database-using-php/
 
Ozzie PHP

Ozzie PHP

06/10/2015 22:19:47
Quote Anchor link
>> Als hij zelf gemaakte CMS heeft dan moet hij dat wel doen, neem webshop als een voorbeeld.

Wat heeft een zelfgemaakt CMS of webshop te maken met hoe je een plaatje opslaat?
 
Johan de wit

johan de wit

06/10/2015 22:30:00
Quote Anchor link
Hij slaat zijn afbeeldingen in de database op, oftewel dat wilt hij graag doen.
Hier werd aangeraden dat je beter in map kan opslaan, maar als het te veel is en je werkt het bij met back-end dan js via database handiger dan handmatig invoeren?
 
Ozzie PHP

Ozzie PHP

06/10/2015 22:47:29
Quote Anchor link
>> maar als het te veel is en je werkt het bij met back-end dan js via database handiger dan handmatig invoeren?

Wat zeg je nou toch allemaal. Ik heb geen idee waar je het nu over hebt of wat je bedoelt. Ik denk dat je niet snapt wat er bedoeld wordt. Je kunt een image als binaire data in de database zelf opslaan, of je kunt een link naar de image in de database opslaan. Dat heeft verder niks te maken met een zelfgemaakt CMS of webshop.
 
Johan de wit

johan de wit

06/10/2015 22:53:30
Quote Anchor link
Cms was als een voorbeeld bedoeld.
Sorry, laat maar zitten ik denk dat ik het fout heb.
 
Willem vp

Willem vp

06/10/2015 23:11:55
Quote Anchor link
Joni Fleischer op 06/10/2015 18:55:48:
Maar waarom zou je dat willen? Dat maakt je database onnodig zwaar.
Je kan beter gewoon plaatjes in mappen stoppen.

Hangt een beetje van de toepassing af. Zo heb ik zelf een toepassing waarbij de live-beelden van een stuk of 50 camera's via een website kunnen worden bekeken. Die beelden verversen elke 2 seconden. Het is vragen om moeilijkheden als je dat via een bestandssysteem doet. Om maar eens iets te noemen: je wilt niet weten hoevaak er slechts een deel van een plaatje wordt getoond, omdat het besturingssysteem net bezig is het plaatje te updaten. Via een database heb je dat probleem niet; daar krijg je gewoon de data die het laatst gecommit is.
 
Joni Fleischer
Moderator

Joni Fleischer

07/10/2015 08:17:16
Quote Anchor link
Dat is absoluut waar Willem vp!

Nu is het wachten totdat de TS reageert ons lijden verlost met een antwoord? :)
 

07/10/2015 11:29:04
Quote Anchor link
Quote:
Je moet base64 codering gebruiken.

Dat kan, maar het hoeft niet. Databases kunnen bestanden (en dus plaatjes) ook prima binair opslaan in een BLOB. Handig voor als je meerdere plaatjes hebt, dan zitten ze allemaal in hetzelfde bestand. Te meer als je ook nog metadata over die plaatjes opslaat, of er makkelijk wilt naar kunnen verwijzen is een database aan te raden boven het bestandssysteem. Want met database contraints en checks kun je er voor zorgen dat je metadata niet out-of-sync gaat lopen met de plaatjes.

Je moet dan wel een index gebruiken, om niet in performance achteruit te gaan. Daarnaast kan je de plaatjes in een eigen tabel opslaan, met een index op de primary key, en de metadata in een eigen tabel met een foreign key naar de plaatjestabel. Je hoeft het natuurlijk niet per sé te scheiden in twee tabellen, maar het kan handig zijn als de metadata vaker geraadpleegd wordt.
Gewijzigd op 07/10/2015 11:36:19 door
 



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.