我的代码不是张贴,虽然对我来说一切看起来都是正确的


My code is not posting, although to me everything looks correct

这是我的代码,基本上是这样写的,所以你需要做的就是点击提交。我得到一个错误,虽然:

数据没有发布。我不明白为什么。我不是一个大师级的程序员,但我认为我的一切都是正确的。有人能给我指个正确的方向吗?

感谢
<?php
require_once('connectvars.php');
?>
<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>PDI Non-Conforming Materials Report</title>
<link rel="stylesheet" type="text/css" href="CSS/postie.css" />
</head>
<body>
<div id="logo">
    <img src="images/PDI_Logo_2.1.gif" alt="PDI Logo" />
</div>
<div id="title">
    <h3 id="NCMR2">Non-Conforming Materials Report (NCMR)</h3>
</div>
<?php
//Post Data
 if (isset($_POST['submit'])) {
    $ab = $_POST['ab'];
    $date = date('Y-m-d',strtotime($_POST['date']));
    $part = $_POST['part'];
    $rev = $_POST['rev'];
    $partdesc = $_POST['partdesc'];
    $ncmrqty = $_POST['ncmrqty'];
    $comp = $_POST['comp'];
    $ncmrid = $_POST['ncmrid'];
    $rma = $_POST['rma'];
    $jno = $_POST['jno'];
    $in = $_POST['in'];
    $tp = $_POST['tp'];
    $cof = $_POST['cof'];
    $fab1= $_POST['fab1'];
    $fab2= $_POST['fab2'];
    $fab3= $_POST['fab3'];
    $non= $_POST['non'];
    $dis= $_POST['dis'];
    $comm= $_POST['comm'];
    $caad= $_POST['caad'];
    $po= $_POST['po'];
    $pod = date('Y-m-d',strtotime($_POST['pod']));
    $dri = date('Y-m-d',strtotime($_POST['dri']));
    $output_form = 'no';
    if (empty($ab) || empty($date) || empty($part) || empty($partdesc) || empty($ncmrid) || empty($non) || empty($dis) || empty($po) || empty($pod) || empty($dri)) {
    // We know at least one of the input fields is blank 
    echo 'Please fill out all of the required NCMR information.<br />';
    $output_form = 'yes';
        }
    }
  else {
    $output_form = 'yes';
    }
//Access the Database
    if (!empty($ab) && !empty($date) && !empty($pod)) {
        $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)
        or die('Error connecting to MySQL server.');
    $query = "INSERT INTO ncmr (ab, date, part, rev, partdesc, ncmrqty, comp, ncmrid, rma, jno, in, tp, cof, fab1, fab2, fab3, non, dis, comm, caad, po, pod, dri)
    VALUES ('$ab', '$date', '$part', '$rev', '$partdesc', '$ncmrqty', '$comp', '$ncmrid', '$rma', '$jno', '$in', '$tp', '$cof', '$fab1', '$fab2', '$fab3', '$non', '$dis', '$comm', '$caad', '$po', '$pod', '$dri')";
    mysqli_query($dbc, $query)
      or die ('Data not inserted.');
      // Confirm success with the user
      echo '<tr><td class="thank">';
      echo '<p>Thank you for adding the NCRM, the correct person will be informed.</p>';
      echo '<p><a href="post.php">&lt;&lt; Back to the form</a></p>';
      echo '</td></tr>';
    mysqli_close($dbc);
  }
  if ($output_form == 'yes') {
        echo '<form method="post">';
            echo '<fieldset>';
        //Part, Rev, Part Description, NCMR Qty
            echo '<div id="box1">';
                echo '<div id="ab"><span class="b">Added By:&nbsp;&nbsp;</span><input type="text" name="ab" value="" /></div>';
                echo '<div id="date"><span class="b">Date Filed:&nbsp;&nbsp;</span><input type="text" name="date" value="" /></div>';
                echo '<div id="part"><span class="b">Part Number:&nbsp;&nbsp;</span><input type="text" name="part" value="" /></div>';
                echo '<div id="rev"><span class="b">Part Revision:&nbsp;&nbsp;</span><input type="text" name="rev" value="" /></div>';
                echo '<div id="partdesc"><span class="b">Part Description:&nbsp;&nbsp;</span><textarea name="partdesc" rows="3" cols="22" ></textarea></div>';
                echo '<div id="ncmrqty"><span class="b">NCMR Qty:&nbsp;&nbsp;</span><input type="text" name="ncmrqty" value="" /></div>';
            echo '</div>';
//Inventory On Hand, Inventory Check, Supplier Name, Supplier Number, Manufacturer Part Number, Manufactuer Serial Number and NCMR ID
            echo '<div id="box2">';
                echo'<div id="comp">';
                    echo '<span class="b">Company:&nbsp;&nbsp;</span>';
                    $mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$mysqli->select_db('comp');
$result = $mysqli->query("SELECT * FROM comp"); 
$i = 0;
echo "<SELECT name='comp'>'n";
while($row = $result->fetch_assoc()) {
 if ($i == 3) echo '<option value="lines">-----</option>';
 echo "<option value='{$row['user_id']}'>{$row['name']}</option>'n";
 $i++;
}
echo "</select>'n";
                echo '</div>';
                echo '<div id="ncmrid"><span class="b">Customer NCMR ID:&nbsp;&nbsp;</span><input type="text" name="ncmrid" value="" /></div>';
                echo '<div id="rma"><span class="b">Internal RMA #:&nbsp;&nbsp;</span><input type="text" name="rma" value="" /></div>';
                echo '<div id="jno"><span class="b">Job #:&nbsp;&nbsp;</span><input type="text" name="jno" value="" /></div>';
            echo '</div>';
//Type of Failure and Class of Failure
            echo '<div id="box3">';
                echo '<h2>Failure Due To</h2>';
                echo '<input type="hidden" name="ih" value="0" /><br />';
                echo '<input type="checkbox" name="ih" value="1" /> In House<br />';
                echo '<input type="hidden" name="tp" value="0" /><br />';
                echo '<input type="checkbox" name="tp" value="1" /> Third Party<br />';
                echo'<div id="cof">';
                    echo '<span class="b">Class of Failure:&nbsp;&nbsp;</span><br />';
                    echo '<select name="cof">';
                    echo '<option value="none">----None----</option>';
                    echo '<option value="Materials">Materials</option>';
                    echo '<option value="Fabrication">Fabrication</option>';
                    echo '<option value="Drawing">Drawing</option>';
                    echo '<option value="Assembly">Assembly</option>';
                    echo '<option value="Testing">Testing</option>';
                    echo '<option value="Electrical">Electrical</option>';
                    echo '<option value="Programming">Programming</option>';
                    echo '<option value="Machining">Machining</option>';
                    echo '<option value="Inspection">Inspection</option>';
                    echo '<option value="Purchasing">Purchasing</option>';
                    echo '<option value="Administrator">Administrator</option>';
                    echo '</select>';
                echo '</div>';
            echo '</div>';
//Fabricators
            echo '<div id="box4">';
                echo '<h2>Fabricators</h2>';
                            echo'<div id="fab1">';
                    echo '<select name="fab1">';
                    echo '<option value="none">===None===</option>';
                    echo '<option value="Andy Kahl">Andy Kahl</option>';
                    echo '<option value="Anthony Ayoub">Anthony Ayoub</option>';
                    echo '<option value="Bob Payne">Bob Payne</option>';
                    echo '<option value="Butch Laplante">Butch Laplante</option>';
                    echo '<option value="Daryl Flynn">Daryl Flynn</option>';
                    echo '<option value="Derrick Clark">Derrick Clark</option>';
                    echo '<option value="Dolores Drinkwater">Dolores Drinkwater</option>';
                    echo '<option value="Errol Flynn">Errol Flynn</option>';
                    echo '<option value="Gary Capella">Gary Capella</option>';
                    echo '<option value="Gelia Moril">Gelia Moril</option>';
                    echo '<option value="Gregg Tansino">Gregg Tansino</option>';
                    echo '<option value="Kevin Sullivan">Kevin Sullivan</option>';
                    echo '<option value="Kurt Flynn">Kurt Flynn</option>';
                    echo '<option value="Matt Ross">Matt Ross</option>';
                    echo '<option value="Mike Sullivan">Mike Sullivan</option>';
                    echo '<option value="Patrick Walsh">Patrick Walsh</option>';
                    echo '<option value="Ralph Block">Ralph Block</option>';
                    echo '<option value="Rick Guay">Rick Guay</option>';
                    echo '<option value="Scott Hamel">Scott Hamel</option>';
                    echo '<option value="Scott King">Scott King</option>';
                    echo '<option value="Scott Pazerbiak">Scott Pazerbiak</option>';
                    echo '<option value="Scott Zizza">Scott Zizza</option>';
                    echo '<option value="Shaun Tardiff">Shaun Tardiff</option>';
                    echo '<option value="Sherry Ryan">Sherry Ryan</option>';
                    echo '<option value="Terry Wilkins">Terry Wilkins</option>';
                    echo '<option value="Wade Page">Wade Page</option>';
                    echo '</select>';
                echo '</div>';
                    echo'<div id="fab2">';
                    echo '<select name="fab2">';
                    echo '<option value="none">===None===</option>';
                    echo '<option value="Andy Kahl">Andy Kahl</option>';
                    echo '<option value="Anthony Ayoub">Anthony Ayoub</option>';
                    echo '<option value="Bob Payne">Bob Payne</option>';
                    echo '<option value="Butch Laplante">Butch Laplante</option>';
                    echo '<option value="Daryl Flynn">Daryl Flynn</option>';
                    echo '<option value="Derrick Clark">Derrick Clark</option>';
                    echo '<option value="Dolores Drinkwater">Dolores Drinkwater</option>';
                    echo '<option value="Errol Flynn">Errol Flynn</option>';
                    echo '<option value="Gary Capella">Gary Capella</option>';
                    echo '<option value="Gelia Moril">Gelia Moril</option>';
                    echo '<option value="Gregg Tansino">Gregg Tansino</option>';
                    echo '<option value="Kevin Sullivan">Kevin Sullivan</option>';
                    echo '<option value="Kurt Flynn">Kurt Flynn</option>';
                    echo '<option value="Matt Ross">Matt Ross</option>';
                    echo '<option value="Mike Sullivan">Mike Sullivan</option>';
                    echo '<option value="Patrick Walsh">Patrick Walsh</option>';
                    echo '<option value="Ralph Block">Ralph Block</option>';
                    echo '<option value="Rick Guay">Rick Guay</option>';
                    echo '<option value="Scott Hamel">Scott Hamel</option>';
                    echo '<option value="Scott King">Scott King</option>';
                    echo '<option value="Scott Pazerbiak">Scott Pazerbiak</option>';
                    echo '<option value="Scott Zizza">Scott Zizza</option>';
                    echo '<option value="Shaun Tardiff">Shaun Tardiff</option>';
                    echo '<option value="Sherry Ryan">Sherry Ryan</option>';
                    echo '<option value="Terry Wilkins">Terry Wilkins</option>';
                    echo '<option value="Wade Page">Wade Page</option>';
                    echo '</select>';
                echo '</div>';
                            echo'<div id="fab3">';
                    echo '<select name="fab3">';
                    echo '<option value="none">===None===</option>';
                    echo '<option value="Andy Kahl">Andy Kahl</option>';
                    echo '<option value="Anthony Ayoub">Anthony Ayoub</option>';
                    echo '<option value="Bob Payne">Bob Payne</option>';
                    echo '<option value="Butch Laplante">Butch Laplante</option>';
                    echo '<option value="Daryl Flynn">Daryl Flynn</option>';
                    echo '<option value="Derrick Clark">Derrick Clark</option>';
                    echo '<option value="Dolores Drinkwater">Dolores Drinkwater</option>';
                    echo '<option value="Errol Flynn">Errol Flynn</option>';
                    echo '<option value="Gary Capella">Gary Capella</option>';
                    echo '<option value="Gelia Moril">Gelia Moril</option>';
                    echo '<option value="Gregg Tansino">Gregg Tansino</option>';
                    echo '<option value="Kevin Sullivan">Kevin Sullivan</option>';
                    echo '<option value="Kurt Flynn">Kurt Flynn</option>';
                    echo '<option value="Matt Ross">Matt Ross</option>';
                    echo '<option value="Mike Sullivan">Mike Sullivan</option>';
                    echo '<option value="Patrick Walsh">Patrick Walsh</option>';
                    echo '<option value="Ralph Block">Ralph Block</option>';
                    echo '<option value="Rick Guay">Rick Guay</option>';
                    echo '<option value="Scott Hamel">Scott Hamel</option>';
                    echo '<option value="Scott King">Scott King</option>';
                    echo '<option value="Scott Pazerbiak">Scott Pazerbiak</option>';
                    echo '<option value="Scott Zizza">Scott Zizza</option>';
                    echo '<option value="Shaun Tardiff">Shaun Tardiff</option>';
                    echo '<option value="Sherry Ryan">Sherry Ryan</option>';
                    echo '<option value="Terry Wilkins">Terry Wilkins</option>';
                    echo '<option value="Wade Page">Wade Page</option>';
                    echo '</select>';
                echo '</div>';
            echo '</div>';
             //Nonconformity, Disposition, Comments and Comments & Additional Details
            echo '<div id="box5">';
                    echo '<div id="non"><span class="b">Nonconformity:&nbsp;&nbsp;</span><br /><textarea name="non" rows="3" cols="110" ></textarea><br /></div>';
                    echo '<div id="dis"><span class="b">Disposition:&nbsp;&nbsp;</span><br /><textarea name="dis" rows="3" cols="110" ></textarea></div>';
                    echo '<div id="comm"><span class="b">Comments:&nbsp;&nbsp;</span><br /><textarea name="comm" rows="3" cols="110" ></textarea></div>';
                    echo '<div id="caad"><span class="b">Comments and/or Additional Details:&nbsp;&nbsp;</span><br /><textarea name="caad" rows="3" cols="110" ></textarea></div>';
            //PO, PO Date, and Date Recieved
            echo '<div id="podr">';
                    echo '<div id="po"><span class="b">PO:&nbsp;&nbsp;</span><input type="text" name="po"  size="7" value="" /></div>';
                    echo '<div id="pod"><span class="b">PO Date:&nbsp;&nbsp;</span><input type="text" name="pod"  size="7" value="" /></div>';
                    echo '<div id="dri"><span class="b">Date Received:&nbsp;&nbsp;</span><input type="text" name="dri"  size="7" value=""';
            echo '</div>';
                    echo '<div id="button"><input type="submit" value="Submit NCMR" name="submit" /></div>';
            echo '</div>';

    echo '</fieldset>';
echo '</form>';
    }
?>
</body>
</html>

首先,您的表单没有设置ACTION -这是决定向何处发送数据的。

那么,改变行:

 echo '<form method="post">';

转到如下:

 echo '<form method="post" action="http://url.to/your_file.php">';

您只给每个选项,但没有名称,这是识别post值的基本要求。

我给你这个

可以帮你节省很多时间
<?
foreach ($_POST as $k=>$v) $$k=$v;
?>

上面所有将$_POST变量移动到$normal作用域的代码都可以用我上面的一小段代码完成。你的表单

有严重的错误