mysqli_query():行中的空查询

时间:2015-11-04 10:24:30

标签: php ios mysql xcode mysqli

我对xcode和php感到困惑,因为在iOS模拟器中运行的完全相同的代码对iPhone本身不起作用。

php文件如下所示:

<?php
$con=mysqli_connect("localhost","BLACKEDOUT","BLACKEDOUT","BLACKEDOUT"     );

$array = json_decode($_POST["identifier"]);

for($i=0; $i < count($array); $i++)
{
$name = $array[$i][1];
for($j=0; $j < count($array[$i][0]); $j++)
{
    $nummer = $array[$i][0][$j];

    $query = "SELECT x FROM Z WHERE uniqueID = $nummer";
    $dbConn = new PDO('mysql:host=localhost;dbname=BLACKEDOUT', "BLACKOUT", "BLACKEDOUT");
    $smt = $dbConn->prepare($query);
    $smt->bindParam(1, $phone_num );
    $smt->execute();
    if($smt->rowCount())
        {
             $ergebnisArray[] = [$name,$nummer];
    }
    else 
    {
    }
     }

}
echo json_encode($ergebnisArray);

mysqli_query($con, $query) or die ("Could not connect to server");

mysqli_close($con);

?>      

在iOS模拟器中运行代码时,一切都很好,但是当我在我的设备上运行它时,它说:作为Xcode中的响应字符串:“mysqli_query():在第30行清空查询”。当我解决这个错误时,我没有得到我期望的结果。

非常感谢每一位帮助!

1 个答案:

答案 0 :(得分:0)

注意,你使用BLACKOUT和BLACKEDOUT混合,你永远不会使用$ con。另外,请注意在循环中定义$ query,因此当它迭代零次时,$ query永远不会被定义,因此不能在mysqli_query中使用。

试试这个并返回结果:

<?php
$array = json_decode($_POST["identifier"]);

for($i=0; $i < count($array); $i++)
{
$name = $array[$i][1];
    for($j=0; $j < count($array[$i][0]); $j++)
    {
        $nummer = $array[$i][0][$j];

        $query = "SELECT x FROM Z WHERE uniqueID = '".$nummer."'";
        $dbConn = new PDO('mysql:host=localhost;dbname=BLACKEDOUT', "BLACKOUT", "BLACKEDOUT");
        $smt = $dbConn->prepare($query);
        $smt->bindParam(1, $phone_num );
        $smt->execute();
        if($smt->rowCount())
            {
                 $ergebnisArray[] = [$name,$nummer];
        }
        else 
        {
        }
    }

}
echo json_encode($ergebnisArray);
?>