Bonjour

Je cherche à insérer des images dans une BDD (SQL Serveur 2005)

Voici la partie de mon code qui pose problème:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
$img = file_get_contents ($_FILES['fic']['tmp_name']);
 
$commande = "INSERT INTO image  VALUES ('".$img_nom."', '".$img_taille."','".$img_type."','','".addslashes($img)."') ";
 
$resultat=odbc_exec($conn,$commande);
et voici la réponse:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC SQL Server Driver]Erreur de syntaxe ou violation d'accès, SQL state 37000 in SQLExecDirect in D:\exploitation_front\transfert.php on line 36
Bref je ne comprends pas pourquoi je ne peux pas l'insérer. Je ne vois pas d'ou viens le problème
Pour info j'ai mis comme type nvarchar(MAX) dans ma BDD.

Par ailleurs si je passe par un $data = unpack("H*hex", $img);
là j'arrive à insérer mon image en héxadécimal.

Mais le problème c'est que je veux stocker sans la transformation pour pouvoir faire un file_put_contents ensuite.

Voila merci d'avance!