gpt4 book ai didi

PHP 表单将多个输入作为 SQL 查询发送

转载 作者:行者123 更新时间:2023-11-29 23:20:30 25 4
gpt4 key购买 nike

我正在尝试创建一个 PHP 脚本,该脚本根据总计中填写的输入字段,使用这些字段作为 SQL 参数来创建 SQL 查询。但如果没有填写任何字段,则查询将仅检索所有数据。

示例:如果输入“名称”和“城市”字段,则查询必须在末尾连接“AND name = X_INPUT AND city = Y_INPUT”。

为了测试,我尝试实例化 $POST 变量,但没有返回任何内容。我什至不确定这是否是解决问题的最佳方法,但我们将不胜感激任何帮助!

$_POST['name']="Linda";
$_POST['city']="";
$query = "select * from customers where gender = 'F'";

if (empty($_POST)) {

$query = "select * from customers where gender ='F'";
}
else{

foreach($_POST as $key => $v) {
if (!empty($_POST[$key])) {
$cond = " and ".$key."='".$v."'";
$query = $query.$cond;

最佳答案

代码:

$query = $query.$cond; 

每个都会向 SQL 附加不必要的查询。将所有条件放入一个数组中,然后将它们简单地连接为一个字符串。一切都应该这样进行。

$conditions = array();
foreach($POST as $key => $v) {
if (!empty($_POST[$key])) {
$conditions = " $key = '$v'";
}
}
if (! empty($conditions)) {
$sql .= implode(' AND ', $conditions);
}

关于PHP 表单将多个输入作为 SQL 查询发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27352426/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com