Avatar billede fcknet Nybegynder
10. juli 2004 - 20:27 Der er 3 kommentarer og
1 løsning

Upload af billede til mysql database

Jeg har følgende script som uploader:

$imgdata = addslashes(fread(fopen($_FILES[imgfile][tmp_name], "r"), $_FILES[imgfile][size]));
$filetype = $_FILES[imgfile][type];
$db->query("INSERT into ads_banners (imgdata, filetype, linkurl, size, maxviews, maxclicks, active, creation) values ('$imgdata','$filetype','$linkto','$size','$maxviews','$maxclicks','$active','$time')");

Følgende skulle vise banneret:

$data = $db->query("SELECT id, linkurl, imgurl, imgdata, filetype from ads_banners where id = '$_GET[id]'");
$row = mysql_fetch_array($data);
Header( "Content-type: $row[filetype]");
echo stripslashes($row[imgdata]);


Problemet er at der ikke kommer noget billede frem. Har prøvet både med og uden stripslashes til sidst. Hvis jeg ikke kører header() kommandoen kommer der bare en masse underlig tekst - altså er billedet inde i databasen, hvilket phpMyAdmin også bekræfter. Mit felt er "BLOB" typen.
Avatar billede fcknet Nybegynder
10. juli 2004 - 20:34 #1
Fejlen var at jeg havde inkluderet en fil der udskrev noget før min header().
Avatar billede erikjacobsen Ekspert
10. juli 2004 - 20:40 #2
Du skal nu ikke sige stripslashes.
Og du bør nøjes med filetype og imgdata i din select, når det kun er dem du bruger.
Avatar billede fcknet Nybegynder
10. juli 2004 - 21:10 #3
> Du skal nu ikke sige stripslashes.
Fandt jeg ud af...

> Og du bør nøjes med filetype og imgdata i din select, når det kun er dem du bruger.
Har bare klippet det væsentligste ud af koden. Har brug for alle felterne.
Avatar billede erikjacobsen Ekspert
10. juli 2004 - 21:12 #4
;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester