MySQLi:mysqli_real_escape_string()期望参数1为mysqli,null给定

时间:2016-08-06 21:36:31

标签: php mysqli

我意识到类似的问题已被多次询问,但那里提供的解决方案都没有对我有用。我也学过php.net和MySQLi教程,但不能解决这个问题。

$dbconnect = mysqli_connect("localhost", "***", "***", "***");
$today = date('Y-m-d');
$age = mysqli_real_escape_string($dbconnect2, $_POST['age']);
$country = mysqli_real_escape_string($dbconnect2, $_POST['country']);
$poll = "poll-s1";
$result = mysqli_query($dbconnect, "INSERT INTO tblpoll (poll, quizdate, age, country) VALUES($poll, $today, $age, $country)");

产生错误: mysqli_real_escape_string()期望参数1为mysqli,给定

为null

(在$ age和$ country两行。)

$ age和$ country的值来自上一页,例如:

<form id="form1" name="form1" method="post" action="show.php">
<select name="age" class="formadmin" id="age">
            <option value="no" selected="selected">Select</option>
            <option value="under10">Under 10</option>
            <option value="11-20">11-20</option>
            <option value="21-30">21-30</option>
</select>
<select name="country" class="formadmin" id="country">
            <option value="none" selected="selected">Select</option>
            <option value="Afghanistan">Afghanistan</option>
            <option value="Albania">Albania</option>
            <option value="Algeria">Algeria</option>
</select>
</form>

(截断列表)

我之前没有完成MySQLi INSERT,所以我可能会犯一个基本错误,但我无法发现它。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

您正在传递$db_connect2而不是$db_connect