如何将此数组插入我的数据库?假设我已经有了一个数据库?
<?php
if(isset($_POST['myname'], $_POST['myage'], $_POST['mygen']) === true){
//这是我设置键和值的代码
$array = array($_POST['myname'], $_POST['myage'], $_POST['mygen']);
foreach ($array as $i => $values) {
print "<pre>$i {\n";
foreach ($values as $key => $value) {
print " $key => $value\n";
}
print "}\n</pre>";
}
}
?>
<html>
<head>
<script type="text/javascript" >
function CreateTextbox()
//我通过此代码动态生成文本框
{
createTextbox.innerHTML = createTextbox.innerHTML +"Name: <input type='text' name='myname[]' /><br>"
+"Age: <input type='text' name='myage[]' /><br>"
+"Gender: <input type='text' name='mygen[]' /><br>"
}
</script>
</head>
<body>
<form action="" method="post">
<div id="createTextbox"></div>
<input type="button" value="clickHere" onClick="CreateTextbox()" />
<input type="submit" value="Submit" name="submit" />
</form>
</body>
</html>
请帮助:(
答案 0 :(得分:1)
您可能需要计算传入的帖子数组中的元素数量,例如
$data_count = count($_POST['myname']);
你也可以考虑在这里添加一些errro处理来验证所有post数组的大小是否相同,但我会跳过它。
然后你想遍历数组并像这样执行数据库插入:
for ($i=0; $i<$data_count; $i++) {
$name = $_POST['myname'][$i];
$age = $_POST['myage'][$i];
$gen = $_POST['mygen'][$i];
// clean up data for DB insert here
// make DB insert
}
请注意,我遗漏了用于清理数据和插入数据的实际代码,因为这有点超出了本讨论的范围。