Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.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
从MySQL中检索SQL语句并在PHP中处理_Php_Sql - Fatal编程技术网

从MySQL中检索SQL语句并在PHP中处理

从MySQL中检索SQL语句并在PHP中处理,php,sql,Php,Sql,我已经成功地将许多SQL更新语句保存到MySQL,现在我想检索它们并让PHP处理它们。代码如下 当我回显$query时,我从数据库中得到了正确的SQL语句,但是当我试图处理它们时,我得到了一个错误警告:mysqli_query()[function.mysqli query]:空查询 这对我来说毫无意义,快把我逼疯了!我是否必须对$query执行其他操作,以便PHP能够处理它 $num_rows = mysqli_num_rows($resultSQL); if ($num_rows &

我已经成功地将许多SQL更新语句保存到MySQL,现在我想检索它们并让PHP处理它们。代码如下

当我回显$query时,我从数据库中得到了正确的SQL语句,但是当我试图处理它们时,我得到了一个错误警告:mysqli_query()[function.mysqli query]:空查询

这对我来说毫无意义,快把我逼疯了!我是否必须对$query执行其他操作,以便PHP能够处理它

    $num_rows = mysqli_num_rows($resultSQL);
if ($num_rows > 0)
{
    while ($row = mysqli_fetch_array($resultSQL))
        {
            $strSQLupd[] = $row['uSQL'];
        }
        foreach ($strSQLupd as $query) {
            $resultSQLupd = mysqli_query($link, 
            $query
            );
            if (!$resultSQLupd)
            {
                $error = 'Error fetching data: ' . mysqli_error($link);
                include 'error.html.php';
                exit();
            }
        }
}

您是否在某处设置了$link的值,以及您在该应用程序中所做的操作是否需要该值?另外,请记住
var\u dump($varname)始终是一个有用的调试工具

    foreach ($strSQLupd as $query) {
        // put a var_dump below
        var_dump($query);
        $resultSQLupd = mysqli_query($query
        );
        if (!$resultSQLupd)
        {
            $error = 'Error fetching data: ' . mysqli_error($link);
            include 'error.html.php';
            exit();
        }
    }

给它一个快照,看看转储到屏幕上的查询字符串。它可能是空的,这就是产生错误的原因。

您是否尝试了var_dump($strSQLupd)并查看其设置是否正确?我输入了var_dump并获取字符串(0)”,这显然意味着字符串为空。所以,有两个问题。。。(1) 我该如何解决这个问题;(2)回声为什么起作用?啊哈。。。我发现了问题。和往常一样,它在另一段代码中。我正在检索的数据中有一些空值。所以,echo可以工作,但没有供PHP处理的SQL。var转储有助于发现问题,因此非常感谢;)@用户2042038太棒了!我很高兴它帮助你找到了问题所在。我在开发中一直使用变量转储。当然,这样做并不能代替使用实际的调试器,但这是一种快速获取数据可视化的方法。在我回答的最后一句话中,我建议可能是空查询字符串导致了错误为了我;0