Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何正确地从sqldb获取blob(MAX)映像_Php_Sql_Sql Server_Blob_Sqlsrv - Fatal编程技术网

Php 如何正确地从sqldb获取blob(MAX)映像

Php 如何正确地从sqldb获取blob(MAX)映像,php,sql,sql-server,blob,sqlsrv,Php,Sql,Sql Server,Blob,Sqlsrv,当我尝试以水滴的形式获取图像时,我得到以下响应: 响应内容必须是实现_toString()的字符串或对象,给定“boolean” 我的代码如下:, GET查询 function GET_shopimages($shopid){ $currentUserName = Auth::user()->name; $query = "SELECT * FROM srms_dam.dbo.pictures WHERE srms_dam.dbo.pictures.shopid = (?)

当我尝试以水滴的形式获取图像时,我得到以下响应: 响应内容必须是实现_toString()的字符串或对象,给定“boolean”

我的代码如下:, GET查询

function GET_shopimages($shopid){
    $currentUserName = Auth::user()->name;
    $query = "SELECT * FROM srms_dam.dbo.pictures WHERE srms_dam.dbo.pictures.shopid = (?) ";
    $parameters = array((int) $shopid);
    return executeImageObjectQuery($query, $parameters);
}
executeImageObjectQuery:

 function executeImageObjectQuery($inputQuery, $stagingParameters){
        $conn = buildConnection();
        if( $conn ) {
            $query = $inputQuery;
            $result = sqlsrv_query($conn, $query, $stagingParameters);
            $detailresult  = sqlsrv_fetch_array($result); echo '<img 
            src="data:image/jpeg;base64,'.base64_encode( $result['picture'] ).'"/>';
            sqlsrv_close ($conn);
            return $detailresult;
      } else {
         return response('Cannot build database connection', 503);
    }
}
函数executeImageObjectQuery($inputQuery,$stagingParameters){
$conn=buildConnection();
如果($conn){
$query=$inputQuery;
$result=sqlsrv_query($conn、$query、$stagingParameters);
$detailresult=sqlsrv_fetch_数组($result);回显“”;
sqlsrv_close($conn);
返回$detailresult;
}否则{
返回响应('无法建立数据库连接',503);
}
}
我已经看了关于blob的不同问题,但找不到答案,任何帮助都将不胜感激。 查询在数据库本身中工作。 $detailresult=$result在这里

(如果我需要插入我的路线代码,请让我知道)



因为我花了很长时间才弄明白,所以我决定将图片路径上传到数据库中,然后从那里开始。问题仍然存在,因为我确信我不是唯一一个有这个问题的人

可能是打字错误:

$result['picture']
将结果提取到
$detailresult
中,您应该使用它:

$detailresult['picture']

不过,您可能会从sql查询中得到一些错误,因此我将使用。

可能有一个打字错误:

$result['picture']
将结果提取到
$detailresult
中,您应该使用它:

$detailresult['picture']

不过,您可能会从sql查询中得到一些错误,因此我将使用。

您应该评估
sqlsrv\u查询返回的内容。您可能从该方法获得布尔结果,该方法的布尔值意味着您得到
FALSE
响应。使用
sqlsrv\u errors
调查错误。$detailresult=$result此处:不,看起来不是这样
$result
是语句资源,
$detailresult
是数组、空值或假值。您应该评估从
sqlsrv\u查询
返回的内容。您可能从该方法获得布尔结果,该方法的布尔值意味着您得到
FALSE
响应。使用
sqlsrv\u errors
调查错误。$detailresult=$result此处:不,看起来不是这样
$result
是一个语句资源,
$detailresult
是一个数组,空值或假值。是的,我有一段代码使$result等于$detailresult,很抱歉没有显示。@TerranGaming您能用您提供的信息更新您的问题吗?是的,我有一段代码使$result等于$detailresult,很抱歉没有显示。@TerranGaming您能用您提供的信息更新您的问题吗?