PHP、Mysql、数据库内部搜索
当PHP变量中包含特定列值时,我希望返回特定表中的所有行,例如:第34行:列'xyz'值等于=“兔子”,我的PHP变量是PHP、Mysql、数据库内部搜索,php,mysql,Php,Mysql,当PHP变量中包含特定列值时,我希望返回特定表中的所有行,例如:第34行:列'xyz'值等于=“兔子”,我的PHP变量是$var=“兔子,罗伯特,青少年”,因为“xyz”列值包含在$var中,所以我希望将其选中 我怎样才能做到这一点呢?如果我正确理解了你的问题,那么你正在寻找这样的答案: $arr = explode(',', $var); $where_in_val = ''; foreach($arr as $value){ $where_in_val.= "'$value',"; }
$var=“兔子,罗伯特,青少年”
,因为“xyz”列值包含在$var
中,所以我希望将其选中
我怎样才能做到这一点呢?如果我正确理解了你的问题,那么你正在寻找这样的答案:
$arr = explode(',', $var);
$where_in_val = '';
foreach($arr as $value){
$where_in_val.= "'$value',";
}
$where_in_val = substr($where_in_val,0,-1);
那么您的查询可能是这样的
从xyz所在的my_表中选择*($WHERE_IN_val)
注意:不要忘记清理/转义/消毒用户输入 将逗号分隔列表转换为sql格式并放入查询中
$query = "select blah blah WHERE xyz IN ('".str_replace("," ,"','", $var)."');"
将其更改为相当于xyz在(兔子、罗伯特、青少年)@Cups中的位置:他可能不想要
robert
和teen
。还是他?我和robert和teen没有任何关系,但是因为rabbit在php变量中,xyz列是rabbit,所以我希望返回该列。@CioroanuDenisgabriel:但是变量中还有其他东西,你怎么知道你只想要rabbit
?Cups关于xyz IN($var)在哪里的建议对你有用吗?@Rocket:他建议如果表中有“robert”和“teen”条目,他会想要它们,但在本例中没有。