PHP检查mysqli_num_rows无效

时间:2016-05-22 12:16:46

标签: php mysqli

我彻底搜查过,似乎没有任何工作;我有这个代码在这里发布到我的数据库,但问题是我试图运行条件,检查是否存在使用mysqli_num_rows函数的行,但它实际上没有工作。我已经尝试了许多不同的版本和其他功能,例如mysqli_fetch_row,但似乎没有任何工作。这是我的代码:

if (!empty($_POST)) {
    $db_conx="";

    $name = $_POST['name'];
    $module = $_POST['module'];
    $secret = $_POST['secret'];
    $uid1 = $dmt->user['uid'];
    $queryA = "INSERT INTO table_a (uid1,name,module,secret) VALUES ('$uid1','$name','$module','$secret')";
    $resultA = mysqli_query($db_conx,$queryA);
    $queryB = "SELECT 1 FROM table_a WHERE name='$name' LIMIT 1";
    $resultB = mysqli_query($db_conx,$queryB);
    $resultC = mysqli_query($db_conx,$queryB);
    $query = mysqli_query($db_conx,"SELECT * FROM table_a WHERE name='$name'");
    if (empty($name)||empty($module)||empty($secret)) {
        echo "Oops! Can't leave any field blank <br />";
        exit();
    } elseif(mysqli_num_rows($query) > 0){
        echo "name already exists.";
        exit();
    } elseif ($db_conx->query($queryA) === TRUE) {
        echo "New record created successfully.";
        exit();
    } else {
        echo "Error: " . $queryA . "<br>" . $db_conx->error;
        exit();
    }
}

正如您所看到的那样,查询似乎已经运行但确实没有按照它所说的去做。

1 个答案:

答案 0 :(得分:0)

IF内的第一行代码正在销毁用于保存数据库连接的变量

if (!empty($_POST)) {
    $db_conx="";                // get rid of this line

所以基本上没有任何使用mysqli API的工作。

另外:

将这些添加为您尝试调试的脚本的前两行

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', 1);

因为您显然没有阅读php error log