作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
get_results($wpdb->prepare("-6ren">
在表单中,没有任何输入是强制性的。所以,我想在 wpdb 查询中有一个动态的“where”子句。
目前这是查询:
$data = $wpdb->get_results($wpdb->prepare("SELECT * FROM
`wp_gj73yj2g8h_hills_school_data` where
`school_zipcode` = %d AND `school_type` = %s AND `school_rating` = %s
;",$selectedZip,$selectedType,$selectedRating));
如果用户只输入 school_zipcode,那么 where 子句应该只有“school_zipcode”列。其他组合方式相同。
最佳答案
我不会用动态 where 子句使事情变得复杂...我会编写创建查询的 PHP 代码。例如……
注意!!此代码未在服务器上测试,它只是解决问题的一个想法!
<?php
$where_query = array();
// Make sure to escape $_POST
if (!empty($_POST['school_zipcode')) {
$where_query[] = "school_zipcode='" . $_POST['school_zipcode'] . "'";
}
// Make sure to escape $_POST
if (!empty($_POST['school_type')) {
$where_query[] = "school_type='" . $_POST['school_type'] . "'";
}
// Should result in WHERE school_zipcode='123' AND school_type='text'
$where_query_text = " WHERE " . implode(' AND ', $where_query);
$data = $wpdb->get_results($wpdb->prepare("SELECT * FROM `wp_gj73yj2g8h_hills_school_data` " . $where_query_text . ";"));
关于php - wpdb-> 准备查询中的动态 "Where"子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41765116/
我是一名优秀的程序员,十分优秀!