美好的一天我在我的表格上有3个html表格,由用户填充。我正在尝试将所有数据保存到MySQL数据库中,但只有第三个表上的数据被保存,而其他表数据则显示为空。
请在下面找到我迄今为止尝试过的内容:
<?php
error_reporting(~E_NOTICE); // avoid notice
require_once 'dbconfig.php'; //database connection file
if (isset($_POST['btnsave'])) {
$companyName = $_POST['companyName'];
$address = $_POST['address'];
foreach ($_POST['network'] as $rec => $value){
foreach ((array) $_POST['network'] as $rec => $value) {
$network = $_POST['network'][$rec];
$size = $_POST['size'][$rec];
$assignedBy = $_POST['assignedby'][$rec];
}
}
foreach ($_POST['network4'] as $rec4 => $value){
foreach ((array) $_POST['network4'] as $rec4 => $value) {
$network4 = $_POST['network4'][$rec4];
$subnetsize = $_POST['subnetsize'][$rec4];
$max4 = $_POST['max4'][$rec4];
}
}
foreach ($_POST['network6'] as $key => $value){
foreach ((array) $_POST['network6'] as $key => $value) {
$network6 = $_POST['network6'][$key];
$prefix = $_POST['prefix'][$key];
$max6 = $_POST['max6'][$key];
}
}
$stmt = $DB_con->prepare('INSERT INTO mytable(companyName,address,network,size,assignedby,network4,subnetsize,max4,net work6,prefix,max6) '
. 'VALUES(:compName, :uaddr,:tblntwk,:tblassignedBy,:tblnetwk4,:tblsubsz4,:tblmx4,:tblnetwk6,:tblprfx 6,:tblmx6)');
$stmt->bindParam(':compName', $companyName);
$stmt->bindParam(':uaddr', $address);
//First Table Entries
$stmt->bindParam(':tblntwk', $network);
$stmt->bindParam(':tblsze', $size);
$stmt->bindParam(':tblassignedBy', $assignedBy);
//Second Table Entries
$stmt->bindParam(':tblnetwk4', $network4);
$stmt->bindParam(':tblsubsz4', $subnetsize);
$stmt->bindParam(':tblmx4', $max4);
//Third Table Entries: Only this data gets saved
$stmt->bindParam(':tblnetwk6', $network6);
$stmt->bindParam(':tblprfx6', $prefix);
$stmt->bindParam(':tblmx6', $max6);
if ($stmt->execute()) {
$successMSG = "new record succesfully inserted ...";
//header("refresh:60;index.php"); // redirects image view page
} else {
$errMSG = "error while inserting....";
}
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Table Form</title>
<SCRIPT language="javascript">
function addRow(tableID1) {
var table = document.getElementById(tableID1);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "checkbox";
element1.name = "chkbox[]";
cell1.appendChild(element1);
var cell2 = row.insertCell(1);
cell2.innerHTML = "<input type='text' name='network[]'>";
var cell3 = row.insertCell(2);
cell3.innerHTML = "<input type='text' name='size[]' />";
var cell4 = row.insertCell(3);
cell4.innerHTML = "<input type='text' name='assignedby[]' />";
}
function deleteRow(tableID1) {
try {
var table = document.getElementById(tableID1);
var rowCount = table.rows.length;
for (var i = 0; i < rowCount; i++) {
var row = table.rows[i];
var chkbox = row.cells[0].childNodes[0];
if (null != chkbox && true == chkbox.checked) {
table.deleteRow(i);
rowCount--;
i--;
}
}
} catch (e) {
alert(e);
}
}
function addRow(tableID2) {
var table = document.getElementById(tableID2);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "checkbox";
element1.name = "chkbox[]";
cell1.appendChild(element1);
var cell2 = row.insertCell(1);
cell2.innerHTML = "<input type='text' name='network4[]'>";
var cell3 = row.insertCell(2);
cell3.innerHTML = "<input type='text' name='subnetsize[]' />";
var cell4 = row.insertCell(3);
cell4.innerHTML = "<input type='text' name='max4[]' />";
}
function deleteRow(tableID2) {
try {
var table = document.getElementById(tableID2);
var rowCount = table.rows.length;
for (var i = 0; i < rowCount; i++) {
var row = table.rows[i];
var chkbox = row.cells[0].childNodes[0];
if (null != chkbox && true == chkbox.checked) {
table.deleteRow(i);
rowCount--;
i--;
}
}
} catch (e) {
alert(e);
}
}
function addRow(tableID3) {
var table = document.getElementById(tableID3);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "checkbox";
element1.name = "chkbox[]";
cell1.appendChild(element1);
var cell2 = row.insertCell(1);
cell2.innerHTML = "<input type='text' name='network6[]'>";
var cell3 = row.insertCell(2);
cell3.innerHTML = "<input type='text' name='prefix[]' />";
var cell4 = row.insertCell(3);
cell4.innerHTML = "<input type='text' name='max6[]' />";
}
function deleteRow(tableID3) {
try {
var table = document.getElementById(tableID3);
var rowCount = table.rows.length;
for (var i = 0; i < rowCount; i++) {
var row = table.rows[i];
var chkbox = row.cells[0].childNodes[0];
if (null != chkbox && true == chkbox.checked) {
table.deleteRow(i);
rowCount--;
i--;
}
}
} catch (e) {
alert(e);
}
}
</SCRIPT>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
<!-- Optional theme -->
<link rel="stylesheet" href="bootstrap/css/bootstrap-theme.min.css">
</head>
<body>
<?php
if (isset($errMSG)) {
?>
<div class="alert alert-danger">
<span class="glyphicon glyphicon-info-sign"></span> <strong><?php echo $errMSG; ?></strong>
</div>
<?php
} else if (isset($successMSG)) {
?>
<div class="alert alert-success">
<strong><span class="glyphicon glyphicon-info-sign"></span> <?php echo $successMSG; ?></strong>
</div>
<?php
}
?>
<form method="post" enctype="multipart/form-data" class="form-horizontal">
<h>Customer Information</h></p>
<table class="table table-bordered table-responsive">
<tr>
<td><label class="control-label">Company/Client Name:.</label></td>
<td><input class="form-control" type="text" name="companyName" placeholder="Company/Client Name" value="<?php echo $companyName; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Address.</label></td>
<td><input class="form-control" type="text" name="address" placeholder="Address" value="<?php echo $address; ?>" /></td>
</tr>
</table>
<INPUT type="button" value="Add Row" onClick="addRow('ipv4addressspacetable')" />
<INPUT type="button" value="Delete Row" onClick="deleteRow('ipv4addressspacetable')" />
<form action="" method="post" name="f">
<TABLE id="firsttable" width="425" border="1">
<thead>
<tr>
<th width="98"></th>
<th width="94">Network</th>
<th width="121">Size</th>
<th width="84">Assigned By</th>
<th width="121">Assigned Date</th>
<th width="84">Percentage in Use</th>
</tr>
</thead>
<tbody id="ipv4addressspacetable">
</tbody>
</TABLE>
<INPUT type="button" value="Add Row" onClick="addRow('ipv4addressspaceusage')" />
<INPUT type="button" value="Delete Row" onClick="deleteRow('ipv4addressspaceusage')" />
<form action="" method="post" name="f">
<TABLE width="425" border="1">
<thead>
<tr>
<th width="98"></th>
<th width="94">Network</th>
<th width="121">Subnet Size</th>
<th width="84">(Hosts) Max</th>
</tr>
</thead>
<tbody id="ipv4addressspaceusage">
</tbody>
</TABLE>
<INPUT type="button" value="Add Row" onClick="addRow('ipv6addressspaceusage')" />
<INPUT type="button" value="Delete Row" onClick="deleteRow('ipv6addressspaceusage')" />
<form action="" method="post" name="f">
<TABLE width="425" border="1">
<thead>
<tr>
<th width="98"></th>
<th width="94">Network</th>
<th width="121">Prefix</th>
<th width="84">Max</th>
</tr>
</thead>
<tbody id="ipv6addressspaceusage">
</tbody>
</TABLE>
<button type="submit" name="btnsave" class="btn btn-default"><span class="glyphicon glyphicon-save"></span> save</button>
</form>
</div>
<!-- Latest compiled and minified JavaScript -->
<script src="bootstrap/js/bootstrap.min.js"></script>
</body>
</html>
提前谢谢。