Bild in Datenbank speichern

Voltex

Mitglied
Hallo alle zusammen,
Ich hab mal wieder ein kleines Problem. Ich wollte ein Bild in der SQL datenbank speichern. Hab dazu gegoogelt und auch denk ich was verwertbares gefunden. Hier mal der Link dazu:

http://entwickler-forum.de/archive/index.php/t-9576.html

Hab das alles so schön gemacht wie dort beschrieben, allerdings klappts bei mir nicht so ganz. Ich bekomme folgende SQL Fehlermeldung:

Mysql error: Column 'img' cannot be null

Keine Ahnung woran das liegt. Meine SQL Anweisung dazu sieht so aus:

PHP:
<?php 
include ("../sys/dbconnect.php");

mysql_select_db($db, $link); 

$doin = "INSERT INTO tbl_partners (img) VALUES(LOAD_FILE('../tmpl/img/cglogo.png'))";

mysql_query($doin, $link) or die('Mysql error: '.mysql_error());

?>

Datenbankstruktur:
PHP:
CREATE TABLE `tbl_partners` (
  `partnerID` int(11) NOT NULL auto_increment,
  `imagepath` varchar(255) NOT NULL,
  `partnerurl` varchar(100) NOT NULL,
  `smallurl` varchar(30) NOT NULL,
  `img` mediumblob NOT NULL,
  PRIMARY KEY  (`partnerID`),
  UNIQUE KEY `imagepath` (`imagepath`,`partnerurl`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

Wäre super wenn mir jemand sagen kann, woran das liegt.

Dateiattribute, Pfadangabe usw. alles überprüft und korrekt.
 
Zuletzt bearbeitet:
Moin,

Trifft das auch alles zu?:
Aber Vorsicht: Generell müssen drei Vorraussetzungen erfüllt sein, um mit LOAD_FILE() erfolgreich arbeiten zu können. Die Bild-Datei muss sich auf dem gleichen Host befinden, auf dem der MySQL-Server läuft; weiterhin muss die Datei für den MySQL-Server lesbar sein (Stichwort: Rechte) und last not least muss der Anwender im Besitz des FILE-Privilegs sein.

Ansonsten kann ich mir vorstellen das er die Datei nicht findet und deshalb NULL zurück gibt.
Code:
LOAD_FILE('../tmpl/img/cglogo.png')
 
trifft alles zu. Host ist Wampserver auf meim PC (also 'localhost'), Dateiattribute sind gesetzt

Das einzige wo ich mir nicht sicher bin, ist was mit "FILE-Privileg" gemeint ist
 
Zurück