我有桌子 - > interests_cats
id - category
1 - Music
2 - Fashion
3 - Movies
和兴趣表
id - interest - cat_id
1 - Inception - 3
2 - Jackson - 1
3 - Ralf - 2
用户表单我喜欢这个
Fashion [ ] [ ] [ ]
Music [ ] [ ] [ ]
Movies [ ] [ ] [ ]
[] - >文字输入 ,我正在使用PHP
如何从表单中接收和存储数据?
答案 0 :(得分:2)
好吧,您可以像这样生成表单:
$res = mysql_query("SELECT id, category FROM categories ORDER BY category");
while (mysql_fetch_array($res))
{
echo $res['category'];
for ($i=0; $i<3; $i++)
echo " <input name='cat_" . $res["id"] . "_" . $i . "' />";
}
因此,您将拥有名为cat_1_1
,cat_1_2
,cat_1_3
,cat_2_1
,...,cat_3_3
在处理表单的页面中,您只需要按_
拆分,获取第二个标记(类别ID,您可以丢弃其余标记)并将值逐个放入数据库中。
所以例如(可能需要一些额外的调整/错误检查等):
foreach($_POST as $name=>$value)
{
$tokens = preg_split("/_/", $name);
if ($tokens[0] == "cat")
{
$catnum = (int)$tokens[1];
// INSERT ($catnum, $value) in the table here.
}
}
答案 1 :(得分:0)
Fashion [ Diore ] [ ] [ ] Music [ ] [ ] [ ] Movies [ Robin Hood ] [ Avatar ] [ ]
如果音乐[1]不为空 - > INSERT('Robin Hood',3(音乐)) - &gt;否则什么都不做,音乐应该索引到3