sql >> Databasteknik >  >> RDS >> Mysql

Dra BLOB-bilddata från MySQL i PHP

Du kan lagra bilder i din databas om du vill (även om det inte är något fel med att bara lagra dem som filer heller, välj vad som är lämpligt i din situation), men lagra den råa binära datan i en BLOB (dvs. koda inte den med bas64). Du kan bädda in binära data som du får från file_get_contents i din fråga direkt, förutsatt att du använder rätt escape-funktion (mysql_real_escape_string i ditt fall) först.

När det gäller utmatningen av bilden kan du göra det som du gör det just nu, men du måste mata ut den base64-kodad och med en data URI-schema så här:

echo '<img alt="embedded image" src="data:image/png;base64,' . chunk_split(base64_encode($get_pics2['img_location'])) . '">';

Observera att det finns vissa fördelar och nackdelar med inbäddade bilddata. Några viktiga nackdelar att vara medveten om är de allvarliga omkostnaderna för base64-kodning (cirka 33 % större än originalet) och potentiella cachningsproblem.



  1. COUNT CASE och WHEN-sats i MySQL

  2. välj från en tabell, infoga i en annan tabell oracle sql-fråga

  3. Flera sändningar av e-post med bilaga - repost

  4. SQL Server ARITHABORT