我从用户那里收到以下$ _POST数据
url[3] = "beheer"
name[3] = "knowledge"
parent_id[3] = "0"
url[4] = "asd"
name[4] = "adasdas"
parent_id[4] = "0"
url[5] = "asdasd"
name[5] = "asdsadasd"
parent_id[5] = "0"
其中键是每个数据的id。 我想遍历所有数据并更新行
这将执行例如:
mysql_query("UPDATE table SET url = 'beheer', name = 'knowledge', parent_id='0' WHERE id = 3");
我该如何解决这个问题?
答案 0 :(得分:0)
你可以这样做:
foreach ($url as $key => $value)
mysql_query("UPDATE table SET url = '$value', name = '$name[$key]', parent_id='$parent_id[$key]' WHERE id = '$key'");
答案 1 :(得分:0)
正如我所看到的,解决它的最简单方法是使用关联数组。所以你有一个名为$ values的变量,然后像下面这样添加你的名字:
$values[0]['url']
$values[0]['name']
$values[0]['parent_id']
$values[1]['url']
$values[1]['name']
$values[1]['parent_id']
$values[2]['url']
$values[2]['name']
$values[2]['parent_id']
这将使您能够使用类似的foreach循环遍历数组。
foreach($values AS $value) {
$url = $value['url'];
$name = $value['name'];
$parent_id = $value['parent_id'];
$query = "INSERT INTO table (url,name,parent_id) VALUES ('$url','$name','$parent_id')";
}
$sql->query($query);
这当然是一个简单的例子,但它应该会有所帮助。