mysqli_query在PHP中不起作用

时间:2016-01-12 10:37:55

标签: php mysql

我试图从数据库中轻松选择并将结果保存在数组中。

            $query = "SELECT ID FROM Publikationen WHERE Personen LIKE '%; " . $autor2 . "%';";
            echo($query);
            // get IDs
            $res = mysqli_query($link,$query );
            $i = 0;
            while ($row = mysqli_fetch_assoc($res)){
                echo($row['ID']);
                $IDarray[$i]= $row['ID'];           
                $i++;
            }

$autor2变量是一个名称,如:“Doe,John”。 代码似乎不在循环中,并且在循环之后mysqli_error为空,因此似乎我没有从db获得结果。 当我从phpMyAdmin中的$query复制回声时它工作正常。此外,当我使用名称而不是$autor2时,它也可以正常工作,并获得我的整个数组。

4 个答案:

答案 0 :(得分:1)

$query = "SELECT ID FROM Publikationen WHERE Personen LIKE '%" . $autor2 . "%'";

编写此代码。

答案 1 :(得分:0)

就我在SQL查询中看到的而言,存在语法错误。

您写道:

SELECT ID FROM Publikationen WHERE Personen LIKE '%; " . $autor2 . "%';

但应该是:

SELECT ID FROM Publikationen WHERE Personen LIKE '%" . $autor2 . "%';

希望它有所帮助!

答案 2 :(得分:0)

从查询中删除semicolon

$query = "SELECT ID FROM Publikationen WHERE Personen LIKE '% " . $autor2 . "%'";

答案 3 :(得分:0)

只需使用此 -

$query = "SELECT ID FROM Publikationen WHERE Personen LIKE '%$autor2%'";

如果分号很重要,那么使用它但在单引号('')内使用$ author2变量。