[英]PHP MySQL how to associate two fields in one table row?
如果我可以与我的数据库表交谈,我会说“如果client_id和salesrep_id在同一行,请执行此操作!
我得到的大部分条件逻辑。 这是我在努力的“同行”部分。
基本上,我正在构建一个系统,允许所有销售代表查看整个数据表,但允许每个代表只更新自己的特定条目。
这个想法是禁用显示器中其他人的“编辑”链接。
像这样......
<?php if ($row_listClients['client_id'] && $row_listClients['salesrep_id']) { ?>
<td><a href="edit_clients.php?client_id=<?php echo $row_listClients['client_id']; ?>">Edit</a>
</td>
<?php } else { ?>
<td>Edit</td>
<?php } ?>
显然,初始条件不起作用(&&将永远是真的),但其他一切都很好。 只是这一点我坚持下去。
希望这是有道理的,我知道它可能是非常基本的东西。
谢谢一群人,任何指针都会非常感激。
-
这是查询:
$query_listClients = "SELECT client_id, user_id, repname, date, client_type, company,
contact_firstname, contact_lastname, phone, email, property, address, city, province,
repnotes FROM clientdata ORDER BY company ASC";
$listClients = mysql_query($query_listClients, $connAdmin) or die(mysql_error());
$row_listClients = mysql_fetch_assoc($listClients);
再次感谢 ...
-
数据库数据样本 - 我仅作为测试输入。 前两个数字分别是client_id和user_id:
19;"33"; "Ronald Wharton"; "March 20 2013"; "Commercial"; "Bonkers Inc."; "Brett";
"Bonkers"; "987 654 3211"; "brentbonkers@bonkersinc.com"; "Retail Outlet";
"12765 34 Ave"; "Lost Soul City"; "Sask"; "Brett wants to meet with Keith and Dean
before the end of the week. Please call before Friday."
不知道这有什么帮助,但是你去了,谢谢。
您应该在会话中存储当前salesrep_id(登录的那个),然后将其与mySql查询返回的salesrep_id进行比较(在下面的示例中,我已将当前登录的salesrep_id等于1)
像这样在SQL语句中添加一个WHERE子句:
SELECT * FROM $tableName WHERE salesrep_id = 1
你只得到salesrep_id = 1的行
或者,如果要从数据库中获取所有行,然后
SELECT * FROM $tableName
接着
//检查是否返回salesrep_id =当前Sales Rep.Id(本例中为1)
<?php if ($row_listClients['client_id'] && $row_listClients['salesrep_id'] == 1) : ?>
//显示编辑链接
<?php endif; ?>
我重读了你的问题。 听起来好像您要查询所有记录,但只想显示特定销售代表应该允许编辑的项目的编辑链接。
既然你想要所有的记录,这不应该通过SQL完成,听起来你需要做的就是改变:
<?php if ($row_listClients['client_id'] && $row_listClients['salesrep_id']) { ?>
对于这样的事情:
<?php if ($row_listClients['salesrep_id'] == $currentSalesRepId) { ?>
你显然需要为$currentSalesRepId
使用适当的变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.