0

我正在尝试创建一个搜索页面,该页面将允许用户在表单的“名称”和“位置”字段中键入值,然后将在 MYSQLi 查询中使用这些值。

但是这些值没有被解析到查询中。

正在从表单中$_POST正确获取值,如果 say ,查询将起作用WHERE Name = 'name1',所以问题似乎是 bind_param 没有正确解析值。

为什么它不起作用?

    $name = $_POST['name'];
    $location = $_POST['location'];

    if ($result = $mysqli->prepare("SELECT * FROM table WHERE Name = ?")) {
        $result->bind_param("s", $name);
        $result->execute;
            if ($result->num_rows > 0) {                      
                echo "<table>";
                echo "<tr>";
                echo "<th>Name    </td>";
                echo "<th>Location</td>";
                echo "</tr>";
                while ($row = $result->fetch_object()) {
                    echo "<tr>";
                    echo "<td>" . $row->Name . "</td>";
                    echo "<td>" . $row->Location . "</td>";
                    echo "</tr>";
                }
            echo "</table>";
            }  
    }
    $mysqli->close();
4

0 回答 0