将多个HTML表数据添加到MySQL DB中

时间:2016-11-03 15:58:06

标签: php html mysql pdo

美好的一天我在我的表格上有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> &nbsp; save</button>

                        </form>
                        </div>
                        <!-- Latest compiled and minified JavaScript -->
                        <script src="bootstrap/js/bootstrap.min.js"></script>
                        </body>
                        </html>

提前谢谢。

0 个答案:

没有答案