我是编程新手,我创建了一个包含多个复选框和文本字段的表单。如果选中该复选框,则会激活每个文本字段。交叉键数组用于获取所有选中的复选框名称和文本字段值。我想将这些数组数据插入到数据库表中。
任何人都可以给我一些代码来执行此操作。谢谢:))
这是function.php文件
global $usedTexts;
$usedTexts = array();
function postdata(){
if ( isset($_POST['submit']) && array_key_exists("t", $_POST) && is_array($_POST["t"]) && array_key_exists("cb", $_POST) && is_array($_POST["cb"])) {
$usedTexts = array_intersect_key($_POST["t"], $_POST["cb"]);
}
}
这是index.php文件
<?php include_once("function.php"); ?>
<?php postdata(); ?>
<form action="" method="post">
<input type="checkbox" name="cb[1]" value="" onclick="document.getElementById('t1').disabled=!this.checked;" />
<input type="number" max="5" min="1" id="t1" name="t[1]" value="" disabled="disabled" /> <br /><br />
<input type="checkbox" name="cb[2]" value="" onclick="document.getElementById('t2').disabled=!this.checked;"/>
<input type="number" max="5" min="1"id="t2" name="t[2]" value="" disabled="disabled" /><br /><br />
<input type="checkbox" name="cb[3]" value="" onclick="document.getElementById('t3').disabled=!this.checked;"/>
<input type="number" max="5" min="1"id="t3" name="t[3]" value="" disabled="disabled" /><br /><br />
<input type="checkbox" name="cb[4]" value="" onclick="document.getElementById('t4').disabled=!this.checked;"/>
<input type="number" max="5" min="1"id="t4" name="t[4]" value="" disabled="disabled" /><br /><br />
<input name="submit" type="submit" value="Submit" />
</form>
答案 0 :(得分:1)
你能试试吗,
if ( isset($_POST['submit']) && array_key_exists("t", $_POST) && is_array($_POST["t"]) && array_key_exists("cb", $_POST) && is_array($_POST["cb"])) {
$usedTexts = array_intersect_key($_POST["t"], $_POST["cb"]);
foreach($usedTexts as $subjectId=>$subjectExp){
$query= "insert into mysubjects (subjectId, subjectExp) values('".$subjectId."','".$subjectExp."')";
//execute your query, before that make sure you have established the database connection
}
}