我试图弄清楚如何让 select 语句由不断变化的 where 数量填充。这是一个订单状态跟踪应用程序。
基本上,想法是用户(我们公司的客户)登录,可以看到他/她的订单,检查状态等。没问题。当该用户需要与多家公司相关联时,就会出现问题。假设他们工作或拥有两家不同的公司,或者他们为拥有多个子公司的公司工作,每个子公司单独订购,但大人物需要查看所有公司订购的所有东西。这是我遇到问题的地方。我似乎无法找到实现这一目标的好方法。我唯一想到的是:
client='Client Name One' OR client='Client name two' AND hidden='0' OR client='Client name three' AND hidden='0' OR client='Client name four' AND hidden='0'
(注意前面代码中的client指的是用户所在的公司,即我们的client)
放置在我的数据库用户表中名为 company 的列内。然后这样调用:
$clientnamequery = "SELECT company FROM mtc_users WHERE username='testing'";
$clientnameresult = mysql_query($clientnamequery); list($clientname)=mysql_fetch_row($clientnameresult);
$query = "SELECT -redacted lots of column names- FROM info WHERE hidden='0' AND $clientname ORDER BY $col $dir";
$result = mysql_query($query);
问题是,虽然这可行,但我似乎无法让 PHP 在 client=' 和 ' AND hidden='0' 中正确添加。另外,这有点笨拙。
有任何想法吗?提前致谢!