【问题标题】:Why is my PHP is not inserting data into MySQL database? [closed]为什么我的 PHP 没有将数据插入 MySQL 数据库? [关闭]
【发布时间】:2014-09-07 11:24:53
【问题描述】:

我有这个表格可以将数据输入 MySQL 数据库。它没有给我任何错误,也没有插入数据。我浏览了网络,但无济于事。我不确定这是我的代码还是我的数据库配置错误。这是所有代码。

<!DOCTYPE html>
<html>
<head>
<title>Steam Traps Form</title>
<style type="text/css">
    table tr > td { text-align: right; }
    table tr > td + td { text-align: left; }
</style>
</head>
<body>
<form action="FormHandler.php" method="post" >
    <table border="0">
<tr>
<td align="center"><h1>Steam Trap Form Input</h1></td>
</tr>
<tr>
<td>
   <tr>
        <td>Date of Survey</td>
        <td><input type="date" name="dateSurvey">
        </td>
        <tr> 
        <tr>
            <td>Plant Name</td>
            <td><input type="text" name="plantName"></td>
        </tr>
        <tr>
            <td>Plant Location</td>
            <td><input type="text" name="plantLoc"></td>
        </tr>
        <tr>
            <td>Plant Contact Name</td>
            <td><input type="text" name="plantContact"></td>
        </tr>
    <tr>
      <td>Direction</td>
      <td><select name="direction">
             <option value="N">N</option>
             <option value="NE">NE</option>
             <option value="NW">NW</option>
             <option value="S">S</option>
             <option value="SE">SE</option>
             <option value="SW">SW</option>
             <option value="E">E</option>
             <option value="W">W</option>
        </select>
      </td>
    </tr>
    <tr>
      <td>Location (detailed as possible)</td>
      <td><input type="text" name="location" size="40">
      </td>
    </tr>
    <tr>
        <td>Floor Level</td>
        <td><select name="flrLevel">
            <option value="grd">Ground</option>
<option value="1st">1st</option>
<option value="2nd">2nd</option>
<option value="3rd">3rd</option>
<option value="4th">4th</option>
<option value="5th">5th</option>
<option value="6th">6th</option>
<option value="7th">7th</option>
<option value="8th">8th</option>
<option value="9th">9th</option>
<option value="10th">10th</option>
<option value="11th">11th</option>
<option value="12th">12th</option>
<option value="13th">13th</option>
<option value="14th">14th</option>
<option value="15th">15th</option>
</select>
</td>
</tr>
    <tr>
      <td>Elevation (in ft)</td>
      <td><input type="number" name="elevation" size="5">
      </td>
    </tr
    <tr>
      <td>Tag Number</td>
      <td><input type="text" name="tagNum" size="20">
      </td>
    </tr>
    <tr>
      <td>MFG Model Number</td>
      <td><input type="text" name="mmn" size="30">
      </td>
    </tr>
    <tr>
      <td>Size</td>
      <td><input type="text" name="size" size="10">
      </td>
    </tr>
    <tr>
      <td>Pressure</td>
      <td><input type="number" name="pressure" size="5">
      </td>
    </tr>
    <tr>
      <td>Service</td>
      <td><input type="text" name="service" size="5">
      </td>
    </tr>
    <tr>
      <td>Trap Conditions</td>
      <td><select name="trapCond">
             <option value="OK">OK</option>
             <option value="BT">BT</option>
             <option value="RCL">RCL</option>
             <option value="CP">CP</option>
             <option value="VO">VO</option>
        </select>


      </td>
    </tr>
    <tr>
      <td align="right"><input type="submit" 
      name="submit" value="Submit"></td>
    </tr>
    </form>

  </td>
</tr>
</table>
<br />

</body>
</html>

这里是 PHP

<?php

$dateSurvey = $_POST["dateSurvey"];
$plantName = $_POST["plantName"];
$plantLoc = $_POST["plantLoc"];
$plantContact = $_POST["plantContact"];
$direction = $_POST["direction"];
$location = $_POST["location"];
$flrLevel = $_POST["flrLevel"];
$elevation = $_POST["elevation"];
$tagNumb = $_POST["tagNum"];
$mmn = $_POST["mmn"];
$size = $_POST["size"];
$pressure = $_POST["pressure"];
$service = $_POST["service"];
$trapCond = $_POST["trapCond"];



$sql_connection = mysql_connect("localhost", "******", "******");
mysql_select_db("******", $sql_connection) or die( "Unable to select database");


$sql = "INSERT INTO steamtraps (
            dateSurvey,
            plantName,
            plantLoc,
            plantContact,
            direction,
            location,
            flrLevel,
            elevation,
            tagNum,
            mmn,
            size,
            pressure,
            service,
            trapCond,
            ContactDateCreated,
        )
        VALUES (
            '{$dateSurvey}',
            '{$plantName}',
            '{$plantLoc}',
            '{$plantContact}',
            '{$direction}',
            '{$location}',
            '{$flrLevel}',
            '{$elevation}',
            '{$tagNum}',
            '{$mmn}',
            '{$size}',
            '{$pressure}',
            '{$service}',
            '{$trapond}',
            NOW()
        )";
mysql_query($sql, $sql_connection);

mysql_close($sql_connection);


?>

【问题讨论】:

标签: php mysql database sql-insert


【解决方案1】:

尝试更改mysql_query 以有意义地显示错误:

mysql_query($sql, $sql_connection) or die(mysql_error() . "<br/>Query was: " . $sql);

如果您有错误,它将停止执行,您将看到错误和尝试执行的查询。

【讨论】:

  • 感谢@mazzucci!我只需要充分利用错误检测!你摇滚。
【解决方案2】:

我不确定您运行的是哪个版本的 PHP,但自 PHP-5.5.0 以来,mysql_query 和其他相关命令已被弃用。 http://php.net/manual/en/function.mysql-query.php

尝试使用较新的mysqli_query(您需要更新所有 sql 命令,如 mysqli_connect 和 mysqli_close 以匹配)。 http://php.net/manual/en/mysqli.query.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-17
    • 2012-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多