我想从 MySQL 数据库获取调查问题,其中 pollid=1 并回显它们。
我有以下代码:
<?php
include_once 'init/init.funcs.php';
$pollid=$_GET['pollid'];
$result = mysql_query('SELECT kysimus FROM kysimused where survey_id="1"');
$question = mysql_result($result, 0);
echo $pollid;
echo $question;
?>
它有效,我看到数据库中的第一个问题,其中 Survey_id =1。但是当我写时:
<?php
include_once 'init/init.funcs.php';
$pollid=$_GET['pollid'];
$result = mysql_query('SELECT kysimus FROM kysimused where survey_id="$pollid"');
$question = mysql_result($result, 0);
echo $pollid;
echo $question;
?>
它说:
Warning: mysql_result() expects parameter 1 to be resource, boolean given in C:\xampp2\htdocs\Praks\answering.php on line 5
在上一个示例中,我从 url 插入了 pollid,并且我确信变量 $pollid 的值为“1”。为什么第二个代码不起作用?我也有第二个问题,如何创建所有问题的数组,其中有 Survey_id = $pollid。提前致谢。
最佳答案
单引号字符串不解析变量,更改此:
$result = mysql_query('从 kysimused 中选择 kysimus,其中 Survey_id="$pollid"');
为此:
$result = mysql_query('SELECT kysimus FROM kysimused where Survey_id="' . $pollid . '"');
另外不要忘记清理你的输入,像这样会更好:
$result = mysql_query('SELECT kysimus FROM kysimused where Survey_id="' . (int)$pollid . '"');
至少要确保它是一个 int
关于php - 如何使用 PHP 代码使用 WHERE 子句和从 url 设置的变量从 MySQL 数据库获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23111893/