【发布时间】:2014-07-08 17:59:49
【问题描述】:
我正在尝试在数据库中插入数据。我收到此错误:
获取数据时出错
这是我用于插入的表单代码...
<body>
<form action="#" method="post">
<fieldset>
<legend><b>Enter the data:</b></legend>
<p>Pick a Date: <input type="date" id="datepicker" name="date" /></p>
<p>SANC AMT
<select name="f2" size="1">
<option value="">Select Option</option>
<option value="NO SANCTION">NO SANCTION</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select></p>
<p>FORM SALE <select name="f3" size="1">
<option value="">Select Option</option>
<option value="NO SALE">NO SALE</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select> </p>
<p>FORM CHAN <input type="text" name="f4"></p>
<p>FORM SUB 1st <input type="text" name="f5"></p>
<p>FORM REF <input type="text" name="f6"></p>
<p>FORM REJ <input type="text" name="f7"></p>
<p>F SUB 2nd <input type="text" name="f8"></p>
<p>F SUB 3rd <input type="text" name="f9"></p>
<p>FUEL <input type="text" name="f10"></p>
<p><input type="submit" name="submit" value="submit"></p>
</fieldset>
</form>
</body>
这是我在同一个 php 文件中插入的 php 代码
<?php
$conn = mysql_connect("localhost","root","");
$db = mysql_select_db("proj",$conn);
if(isset($_POST['submit']))
{
$date = $_POST['date'];
$f2 = $_POST['f2'];
$f3 = $_POST['f3'];
$f4 = $_POST['f4'];
$f5 = $_POST['f5'];
$f6 = $_POST['f6'];
$f7 = $_POST['f7'];
$f8 = $_POST['f8'];
$f9 = $_POST['f9'];
$f10 = $_POST['f10'];
$sql = "INSERT into proj1 values('','$date','$f2','$f3','$f4','$f5', '$f6','$f7','$f8','$f9','$f10')";
$query = mysql_query($sql) or die('error getting data');
if($query)
{
echo "<table align='center'>";
echo '<h1 style="text-align:center;">Inserted</h1><br />';
echo '<h3 style="text-align:center;"><i>You have inserted ....</i></h3>';
echo '<tr><th>Date:</th><td> ' .$date. '</td><tr>';
echo '<tr><th>Sanc amt </th><td> ' .$f2. '</td><tr>';
echo '<tr><th>Form SALE</th><td> ' .$f3. '</td><tr>';
echo '<tr><th>FORM CHan </th><td> ' .$f4. '</td><tr>';
echo '<tr><th>FORM Sub 1st </th><td> ' .$f5. '</td><tr>';
echo '<tr><th>FORM ref </th><td> ' .$f6. '</td><tr>';
echo '<tr><th>FORM rej</th><td> ' .$f7. '</td><tr>';
echo '<tr><th>F sub 2nd</th><td> ' .$f8. '</td><tr>';
echo '<tr><th>F sub 3rd</th><td> ' .$f9. '</td><tr>';
echo '<tr><th>FUEL</th><td> ' .$f10. '</td><tr>';
echo "</table>";
}
}
mysql_close($conn); ?>
这是我的 SQL 语句
CREATE TABLE IF NOT EXISTS `proj1` (
`id` int(11) NOT NULL,
`DATE` date NOT NULL,
`sanc_amt` varchar(11) DEFAULT NULL,
`form_sale` varchar(11) DEFAULT NULL,
`form_chan` varchar(11) DEFAULT NULL,
`form_sub` varchar(11) DEFAULT NULL,
`form_ref` varchar(11) DEFAULT NULL,
`form_rej` varchar(11) DEFAULT NULL,
`f_sub2` varchar(11) DEFAULT NULL,
`f_sub3` varchar(11) DEFAULT NULL,
`fuel` varchar(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
【问题讨论】:
-
请提供您遇到的 mysql 错误。只需替换“die('错误获取数据');”用“死(mysql_error());”您应该会收到错误消息。
-
mysql_query 尝试使用
mysql_error失败 -
在您的
mysql_query调用中尝试将die(mysql_error)作为或条件 - 固定错误消息在开发时不是很有用,尤其是当数据库可以准确地告诉您问题所在时。跨度> -
谢谢大家,我在 die 函数中的 mysql_error() 后遇到了错误。
标签: php mysql sql sql-insert