如何在SELECT语句的WHERE子句中传递php变量?

时间:2018-10-19 00:00:17

标签: php mysql sql

我有一个php变量,我想在我的 where 子句中使用此变量来获取数据库中的另一个字段。

我的代码:

require("conn.php");
$module = $_POST[ 'postmodule' ];
$query = "SELECT width FROM modules WHERE code = $module";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
echo $row['width'];

但是,这没有给我打印任何内容。不知道我要去哪里错了,但是任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以断开字符串并将变量与".."

连接
require("conn.php");
$module = $_POST[ 'postmodule' ];
$query = "SELECT width FROM modules WHERE code = '".$module."'";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
echo $row['width'];

或者,只要将字符串用双引号引起来,就可以将变量包装在字符串中的{}中。

require("conn.php");
$module = $_POST[ 'postmodule' ];
$query = "SELECT width FROM modules WHERE code = '{$module}'";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
echo $row['width'];

此外,如果$module是字符串,则需要像上面一样将变量用单引号引起来。