如題
<?php
include 'database.php';
?>
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="do_insert_action.php" method="post">
电影:<select name="first">
<option value="玩命关头7">玩命关头7</option>
<option value="海滩救护队">海滩救护队</option>
<option value="神力女超人">神力女超人</option>
<option value="加勒比海盗">加勒比海盗</option>
<option value="神偷奶爸3">神偷奶爸3</option>
</select><br/>
姓名:<input type="text" name="customer"><br/>
數量:<input type="text" name="id"><br/>
時間:<input type="text" name="time"><br/>
聯絡方式:<input type="text" name="contact_number"><br/>
<input type="submit" name="buy" value="购买">
</form>
</body>
</html>
<?php
include 'database.php';
$first=$_POST['first'];
$customer=$_POST['customer'];
$contact_number=$_POST['contact_number'];
$id=$_POST['id'];
$time=$_POST['time'];
try{
$sql="INSERT INTO drama (name,id,time,customer,contact_number) VALUES ('$first','$id','$time','$customer','$contact_number')";
$count=$conn-->exec($sql);
if($count<1){
$msg="失敗";
}
else {
$msg="成功";
}
} catch (Exception $ex) {
echo $ex->getMessage();
}
?>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="index.php" method="post"></form>
<?php echo $msg ?>
</body>
</html>
能否幫小弟看看上述程式碼哪裡錯了?(已確定連接到database了,因為查詢的動作已成功,可新增的動作就是無法完成)
我猜是你用到MySql的保留字了,至少time這個字不能用,建議所有的資料表跟欄位都加上``(鍵盤左上方、數字1左邊那個鍵),所以原Sql改成
INSERT INTO `drama` (`name`,`id`,`time`,`customer`,`contact_number`) VALUES ('$first','$id','$time','$customer','$contact_number')
試試看
你先確定資料庫能不能連線…
再來先手動建立一筆資料
先select 看能不能撈出資料
再來測inster語法
排除資料庫錯誤後再寫程式
$conn-->exec 有鬼
一般會確認連線 再確認查詢 DB 先用工具塞一筆資料
然後看可否取出在網頁上
上述都可以,INSERT update 就不是問題了 (只差權限問題了)