我需要帮助为 php 函数提供可选参数,该函数将在 MySQL 数据库中搜索匹配条件。
场景:前端= 将有 6 个 html 输入表单字段,分别命名为 authorName、authorCountry、authorState 等
当用户填写这些字段时,字段值将作为 mysql 参数传递给数据库搜索。这里的问题是,如果用户想知道美国的作者名单,他将在国家字段中输入 USA 并留下其他字段。但这会破坏 mysql 查询,因为其他字段留空。
我试过了,但它对我有用。
function getAuth(authName=NULL, authCoun=NULL, authSate=NULL) {
$query = mysql_query("SELECT * FROM authTable WHERE authName='authName'
AND authCoun='authCoun' AND authSate='authSate'");
return $query; }
请帮我传递可选参数。
谢谢你..
最佳答案
function getAuth($authName=NULL, $authCoun=NULL, $authSate=NULL) {
$sql = "SELECT * FROM authTable WHERE 1 = 1";
if ($authName) {
$sql .= " AND authName='$authName'";
}
if ($authCoun) {
$sql .= " AND authCoun='$authCoun'";
}
if ($authSate) {
$sql .= " AND authSate='$authSate'";
}
return mysql_query($sql);
}
并确保在传递给函数之前对这些变量进行了转义。
关于带有可选参数的php mysql函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12600427/