我的主页有问题。
我必须像这样创建一个网站:
status create work finished
Item1 * o o
Item2 o * o
Item3 o o *
(* =选中,o =未选中)
现在作为管理员,我有权更改每个项目的状态。
例如,当我将状态从Item1更改为“work”时,它应该发送一个表单并在数据库中更新它。
我的问题是知道的,我应该为每对3个无线电按钮1 Form创建吗?
但是当我为所有按钮创建1时,我将有问题知道哪个状态已经改变 仅与每个数据库条目进行比较。
在有人问之前,我应该使用radiobuttons。 希望有人可以提供帮助。
格尔茨
Demonking
编辑:对不起,eomeone误解了我。 我的意思是如果我会更快更好:<form method="post">
Item 1 <input type="radio" name="item1" value="create" onclick="this.form.submit()"/>
<input type="radio" name="item1" value="work" onclick="this.form.submit()"/>
<input type="radio" name="item1" value="finished" onclick="this.form.submit()"/>
</form>
<form method="post">
Item 2 <input type="radio" name="item2" value="create" onclick="this.form.submit()"/>
<input type="radio" name="item2" value="work" onclick="this.form.submit()"/>
<input type="radio" name="item2" value="finished" onclick="this.form.submit()"/>
</form>
或
<form method="post">
Item 1 <input type="radio" name="item1" value="create" onclick="this.form.submit()"/>
<input type="radio" name="item1" value="work" onclick="this.form.submit()"/>
<input type="radio" name="item1" value="finished" onclick="this.form.submit()"/>
Item 2 <input type="radio" name="item2" value="create" onclick="this.form.submit()"/>
<input type="radio" name="item2" value="work" onclick="this.form.submit()"/>
<input type="radio" name="item2" value="finished" onclick="this.form.submit()"/>
</form>
因为PHP / MySQL的性能
答案 0 :(得分:2)
我可能会使用一个表单,然后对所有值执行数据库更新
然后我使用javascript来扩充页面,即保持它适用于不支持/执行javascript但是只有在执行javascript的客户端中发送已更改的值的提交处理程序。
然后,我会做一些基准测试/分析,以检查&#34;是否只更改了值&#34; versionn确实比更新所有值更快/更好&#34;版。如果不是javascript部分是历史; - )
答案 1 :(得分:1)
为每个单选按钮指定正确的name
和value
。然后你可以检查选择了哪个单选按钮。
为同一个项目的每个单选按钮指定相同的名称,但为其指定不同的值。然后,在提交后,每个项目都有一个值。
EG。 $ _POST ['item1']应包含'create','work'或'finished'。
然后使用javascript检测哪一个被更改。
答案 2 :(得分:1)
这是一个如何运作的例子,我想你可以弄清楚其余部分。是的,你需要为所有三个项目提供3个无线电按钮。
<form method="post">
Item 1 <input type="radio" name="item1" value="create" onclick="this.form.submit()"/>
<input type="radio" name="item1" value="work" onclick="this.form.submit()"/>
<input type="radio" name="item1" value="finished" onclick="this.form.submit()"/>
</form>