Llevo unas horas intentando meter una imagen obtenida de un formulario php en una bbdd sqlserver, pero no se deja

Ya hay unas cuantas imagenes metidas en esta bbdd pero no las metieron a traves de php sino a traves de una aplicación .net, las que hay metidas las puedo sacar sin problemas, y sin aplicarles ningún filtro, pero no puedo meterlas.
pruebafoto.php
if($_POST['enviar']==""){?>
<form action="" method="post" enctype='multipart/form-data'>
<input type="file" name="archivo" value=""/>
<input type="submit" name="enviar" value="enviar"/>
</form>
<?}else{
magic_quotes_runtime(1);
if (chop($_FILES['archivo']['tmp_name'])!="") {
if ($_FILES['archivo']['tmp_name']!=none) $archivo_bbdd = fread(fopen($_FILES['archivo']['tmp_name'],"r"),filesize($_FILES['archivo']['tmp_name']));
else $archivo_bbdd ="";
}
magic_quotes_runtime(0);
$enlace = new datosSqlServer();
$sql="update FotografiaAI set Fotografia='".$archivo_bbdd."' where IdFotografiaAI='144'";
echo $sql;
$row = $enlace->consulta2($sql);
$enlace = null;
}
la tabla FotografiaAI esta creada, y el campo Fotografia es un campo de imagen.
la funcion consulta está dentro de una clase, es la siguiente:
public function consulta2($sql){
unset($this->resultadoActual);
$query = $sql;
$result = odbc_exec($this->connect, $query);
}
el error que obtengo es el siguiente:
update FotografiaAI set Fotografia='����\0JFIF\0\0H\0H\0\0�� (aqui irian un monton más de carácteres)...' where IdFotografiaAI='144'
Warning: odbc_exec() [function.odbc-exec]: SQL error: �K, SQL state 00000 in SQLExecDirect in /var/www/html/feu/alias/dinamo/new/administracion/comuns/lib.php on line 78
en la linea 78 es donde está:
$result = odbc_exec($this->connect, $query);
Muchas gracias por adelantado y un saludo para todos