-2

如何将此数组插入我的数据库?假设我已经有一个数据库?

<?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>

请帮忙 :(

4

1 回答 1

1

您可能需要像这样计算传入的帖子数组中的元素数量

$data_count = count($_POST['myname']);

您也可以考虑在这里添加一些错误处理来验证所有 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
}

请注意,我省略了用于清理数据和插入数据的实际代码,因为这超出了本讨论的范围。

于 2012-07-18T19:35:12.807 回答