我试图在一个现有的网站上工作,我发现了一个bug,但我不知道为什么是bug,也不知道如何解决它。
该网站基本上列出了一些在一个城市租赁的商业地产。有一个类,它从数据库中获取列表并从每个列表中创建一个对象。在每个对象中都有一个与该属性关联的图像数组。
当用户编辑一个列表时,他们会得到一个编辑页面,其中有一个图像列表,旁边还有一个“删除”复选框。这些复选框都具有相同的名称,因此当它们被提交回服务器时,应用程序会得到一组要删除的图像。
应该发生的是,应用程序有这个开/关值数组(其中on=delete),数组中每个值的索引对应于列表对象中图像的索引——当其中一个值为“on”时,与“on”值对应的图像数组中的文件名将从文件系统中删除,该图像将被重新已从数据库中移动。
但是,提交表单时,应用程序只获得一个包含复选框的0索引数组。因此,如果我设置三个任意图像进行删除,应用程序将
Array {
[0] => "on",
[1] => "on",
[2] => "on"
}
这显然不起作用,无论设置了哪个复选框,列表中的前3个图像都将被删除。
我怎么修这个?我想避免为每个复选框命名(
delete_1
,
delete_2
,
delete_3
等),因为系统已经构建为使用具有相同名称的所有复选框。是否有一种方法可以强制所有复选框以“开”或“关”的形式提交?