mysql 向資料庫中插入一項資料解決辦法
來源:互聯網
上載者:User
mysql 向資料庫中插入一項資料
最後得出的結果就是fail
orderNo是訂單號應該自增的,但是我不會,所以就只是隨便賦了一個值
session_start();
$corn=mysql_connect('localhost','root','');
mysql_query('set names UTF8',$corn);
if (!$corn) {
die('Could not connect: ' . mysql_error());
}
$db_selected=mysql_select_db( "daydream" ,$corn);
if (!$db_selected) {
die ('Can\'t use foo : ' . mysql_error());
}
$time=date("Ymd");
echo $time;
$id=$_GET['id'];
$presult=mysql_query("select * from production where proNo=$id");
$pinfo=mysql_fetch_array($presult);
$sum=$_POST['proNum']*$pinfo['proPrice'];
$num=12;
$sql="INSERT INTO order(orderNo,cusNo,orderDate,orderSum,orderAddress) VALUES ('$num','$_SESSION[admin]', '$time','$sum','$_POST[orderAddress]')";
if (!mysql_query($sql,$corn))
echo "fail";
else
echo "success";
?>
------解決方案--------------------
你把 echo "fail" 改成
echo mysql_error();
就真相大白了!
orderNo 是自增的,也就是主鍵
而主鍵是不可重複的
你給他賦予 $num 的值,那就有可能違規了
既然你在插入時開列了欄位名,那自增欄位就不需要也在其中了
$sql="INSERT INTO order(cusNo,orderDate,orderSum,orderAddress) VALUES ('$_SESSION[admin]', '$time','$sum','$_POST[orderAddress]')";
------解決方案--------------------
orderNo 應該設定為自動編號和主鍵
$sql="INSERT INTO order(cusNo,orderDate,orderSum,orderAddress) VALUES ('$_SESSION[admin]', '$time','$sum','$_POST[orderAddress]')";
echo $sql;
貼出結果看看
------解決方案--------------------
讓你複製My Code就那麼難嗎?
`` 是Tab鍵上方的字元,不是單引號。