J'essaye d'insérer une image dans un champ de type BLOB
dans une DB mysql.
certaines fonctions marchent,
je peux en effet visualiser une image que j'ai inséré "à la main" avec MySql Control Center,
mais je n'arrive pas à insérer cette même image avec un script PHP.
mysql-3.23.52-17
PHP Version 4.2.2
Après un form qui sélectionne l'image, voici le script :
Code :
- $hndl=fopen($_REQUEST["imgfile"],"r" );
- $imgdata=fread($hndl,filesize($_REQUEST["imgfile"]));
-
- $imgdata=addslashes($imgdata);
- $dbname ="test";
- $dbserver = "localhost";
- $dbuser ="root";
- $dbpass ="test";
- $dbconn = @mysql_connect($dbserver,$dbuser,$dbpass) or exit("SERVER Unavailable" );
- @mysql_select_db($dbname,$dbconn) or exit("DB Unavailable" );
- $sql = "INSERT INTO tblimage VALUES(NULL,'". $_REQUEST["imgtype"] ."','". $imgdata ."')";
- @mysql_query($sql,$dbconn) or exit("QUERY FAILED!" );
- mysql_close($dbconn);
- fclose($hndl);
|
et l'erreur :
Code :
- Warning: fopen("C:\\bg_header2.gif", "r" ) - No such file or directory in /srv/www/htdocs/test_imagedb.php on line 32
- Warning: stat failed for C:\\bg_header2.gif (errno=2 - No such file or directory) in /srv/www/htdocs/test_imagedb.php on line 33
- Warning: fread(): supplied argument is not a valid File-Handle resource in /srv/www/htdocs/test_imagedb.php on line 33
- Warning: fclose(): supplied argument is not a valid File-Handle resource in /srv/www/htdocs/test_imagedb.php on line 52
|
Une seule erreur donc, il n'arrive pas à lire l'image, mais pourquoi ?
J'insiste que la table est bien configurée,
puisque j'arrive à lire une image que j'ai inséré avec
Mysql Control Center.
Message édité par warp le 16-09-2003 à 10:04:38
---------------
Il n'est pas nécéssaire de réussir pour persévérer.