php - 如何使用 PHP 代码使用 WHERE 子句和从 url 设置的变量从 MySQL 数据库获取值

标签 php mysql

我想从 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/

相关文章:

MySQL 存储过程不会获取整个表

php - 如何重命名其中包含内容的文件夹? - PHP

php - 我怎样才能 foreach 这个数组结果并在 codeigniter View 中回显

PHP 的 MYSQLI get_charset 返回错误的字符集

php - MySql 查询通过保留最新的时间戳值来删除重复的行?

mysql - SQL查询按结果分组

php - Kohana 3 ORM 更改数据库

mysql - 为什么这个简单的 MySQL 查询这么慢?

php - 我如何将外键应用于此特定要求

php符号显示