我需要在单个表单中更新多个记录,但我不确定如何继续。以下是我用来将字段最初插入数据库的代码。
$case = date(ymdHis);
//register into database
if (!empty($p1_firstname)) mysql_query ("INSERT INTO cases VALUES ('$case','$date_booked','$p1_firstname','$p1_lastname ''$city’)");
if (!empty($p2_firstname)) $register_case = mysql_query ("INSERT INTO cases VALUES ('$case','$date_booked','$p2_firstname','$p2_lastname','$city’)");
我有一个更新表单,显示每个“案例”的记录数据。当每行具有相同的标识符($ case)时,如何使用UPDATE编辑不同行中的信息?
答案 0 :(得分:0)
你没有。您将数据库重新组织到实际有意义的位置,然后从那里开始。
答案 1 :(得分:0)
对数据库进行规范化后,您的每条记录都将具有可用于更新查询的唯一标识符。
您当前的脚本也很容易sql injection。你永远不应该相信用户的输入。
答案 2 :(得分:0)
UPDATE cases
SET column1 = CASE column_id WHEN 0 then 'valueColumn1forRegisterId0'
WHEN 1 then 'valueColumn1forRegisterId1'
WHEN 2 then 'valueColumn1forRegisterId2'
ELSE column1 END,
column2 = CASE column_id WHEN 0 then 'valueColumn2forRegisterId0'
WHEN 1 then 'valueColumn2forRegisterId1'
WHEN 2 then 'valueColumn2forRegisterId2'
ELSE column2 END;