我已经在这里工作了几个小时,没有任何工作,所以非常感谢你的帮助。
我的表格动态地填充了需要主管批准的发票。我正在尝试为主管创建一个单击“批准”全部按钮的功能,并使用每个发票(在MySQL表中具有自己唯一的作业ID)的主管ID更新MySQL表列。 / p>
我尝试过诸如:while循环,将每个作业ID放在一个数组中,一个循环插入每个ID并使用'get'将其传递给另一个页面,以及许多其他过于复杂的解决方案。
似乎有一种简单的方法可以解决这个问题。
因为没有任何工作,我没有很多代码可以显示,但这里是将更新表的查询。这是我用来批准单一发票的,我需要的是能够批准页面上显示的所有发票。
更新工作 SET job_approverid2 ='“。$ approverid。”' WHERE job_id ='“。$ jobid。”'
答案 0 :(得分:0)
嗯,带条件的简单UPDATE
应该这样做:
UPDATE invoices SET approved = 1 WHERE .. condition ..
..条件.. 确定哪些发票获得批准,例如:
UPDATE invoices SET approved = 1 WHERE approved = 0
批准所有未批准的发票。当然,WHERE
子句可能更复杂,例如,使用具有id = 23
的主管更新所有发票:
UPDATE invoices SET approved = 1 WHERE approved = 0 AND supervisor_id = 23
因此,在应用程序级别,您只需要创建一个执行上述查询的页面,它可能有一个URL:
http://example.com/invoices/approve_all.php?supervisor=23
答案 1 :(得分:0)
多行更新,我想你有多个job_ids
$jobid = implode(',' ,$_POST['jobid']); // just example
UPDATE jobs SET job_approverid2='".$approverid."' WHERE job_id IN (".$jobid.");
答案 2 :(得分:0)
我认为这可能有效
"UPDATE jobs SET job_approverid2='".$approverid."' WHERE job_id = '".$jobid."' and job_approverid2!='".$approverid"'"
或者你可以这样做
将所有作业ID作为一个数组(让我们说 $ jobId [] ),其中 job_approverid2!= $ approverid
然后
foreach($jobId[] as $job_id) {
"UPDATE jobs SET job_approverid2='".$approverid."' WHERE job_id = '".$job_id."'"
}