Gå til innhold

Bilder inn i mysql database


Anbefalte innlegg

Skrevet

Lurer på hvordan man legger inn bilder i en mysql database. Har laget en form med input type = 'file'. Hva skal enctype være? Hva er det enctype forteller, og hva er forskjellen på de forskjellige typene? Når man så har valgt et bilde man skal laste opp, hvor blir da selve bildet lagret slik at jeg får tak i det og kan laste det inn i databasen?

 

Er jo også mulig å bare legge lenken til bildet inn i databasen også legge bildet i en mappe på webserveren. Hvordan får jeg i så fall kopiert bildet inn i ønsket mappe?

Videoannonse
Annonse
Skrevet

joda

 

$binary = fread(fopen($_FILES['img']['tmp_name'], "rb"), filesize($_FILES['img']['tmp_name']));

 

så er det bare å legge infoen fra $binary inn i en kolonne av typen longblob

Skrevet

Det er deffinitivt ikke anbefale å ha bilder i database. :)

Det funker såklart, men man har somregel begrenset plass med database, i tilleg til at det går SAAAAAKTE

Skrevet

Hastigheten avhenger helt av serveren. Er mySQL databasen på localhost er det snak om små marginer, men dette er en diskusjon jeg ikke har tenkt å ta opp her.

 

Hvorfor han øsnker å gjøre det slik får da være opp til han, men det er jo en grunn til at muligheten er der ;)

Skrevet

Har skrevet en så enkel kode som dette:

 

if($_POST['image'])
{
 if(is_uploaded_file($_FILES['image']['tmp_name']))
 {
   $handler = fopen($_FILES['image']['tmp_name'], "rb");
   $image = fread($handler, filesize($_FILES['image']['tmp_name']));
   fclose($handler);
 
   $sql = "update ".TABLE_MANUFACTURERS." set manufacturers_image = '".$image."' where manufacturers_id = '".(int)$_SESSION['manufacture_id']."'";
 
   $db->Execute($sql);
 }
}

 

Får inn stien til bildet i $_POST variabelen, men problemet ser ut til å være at is_uploaded_file returnerer false av en eller annen grunn. Er det noen grunn til at bildet ikke blir lastet opp? Har det noe med oppsettet av formen?

Skrevet (endret)

Et forslag er vel kanskje at du ikke har enctype='multipart/form-data' i <form> tagen..

 

EDIT: skrive feiler.. igjen

EDIT2: hvor ikke bruke file_get_contents() for å lese inn filen..

Endret av trondes

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...