我有一个代码,在sql服务器表中插入图像或pdf我认为插入正常,但当我必须提取de数据显示在HTML页面,没有显示任何内容。我看到很多例子,而且这些查询似乎很好。我不知道错误在哪里,代码如下:
从代码表中接收值的php代码:
$destino = addslashes( file_get_contents( $value['tmp_name'] ) );
$tmpName = $value['tmp_name'];
$fp = fopen($tmpName, 'r');
$data = fread($fp, filesize($tmpName));
$destino = ($data);
fclose($fp);
$tamano = $value['size'];
$tipo = $value['type'];
$nombre = $value['name];
$sql="INSERT INTO documents
( nombre, archivo,extension )
VALUES
(:nombre, cast(:archivo as varbinary(max)), :extension )";
$valores = array(
':nombre' =>$item->nombre,
':archivo' =>utf8_encode( $item->archivo ),
':extension' =>$item->extension);
我在数据库中检查并插入良好。
当我执行选择查询以获取存储的值并在网页中显示时,我有以下代码:
$sql = "SELECT nombre,CAST(archivo as VARCHAR(MAX)) as archivo,extension from documents WHERE id= :id";
$valores=array(':id' => $id );
最后让这段代码在视图中打印图像或pdf。
$doc = $servi->findDocById( $_GET['id'] );
header("Content-type: {$doc->extension}");
echo ( $doc->archivo );
这在视图中显示什么都没有。谁知道哪里出错了?
谢谢