環境:Win7(x64)、Wamp整合(PHP5.4.3+MySQL5.5.24+Apache2.4.2+PHPMyAdmin3.5.1)
目的:做一個簡易的留言板的功能,一單擊“發表”可以在資料庫中添加一條相關資料。
問題:按“發表”後,顯示“插入成功”。但是後台資料庫中卻沒有添加進去
------------------------------- conn.php------------------------------------
@mysql_connect("localhost","root","root")or die("MySQL串連失敗了");
@mysql_select_db("db_php100_microblog")or die("DB串連失敗");
mysql_query("set names 'gbk'");
?>
*****************運行正常,無報錯******************
------------------------------ add.php--------------------------------------
include ("conn.php");//引入資料庫
if(!empty($_POST['sub'])){
$title = $_POST['title'];
$con = $_POST['con'];
$sql = "INSERT INTO `news`(`id`, `title`, `dates`, `contents`)
VALUES (null,'$title',now(),'$con')";
mysql_query($sql);
echo "插入成功!";
}
?>
*****************運行正常,無報錯******************
-----------------------------資料庫相關-------------------------------------
資料庫名:db_php100_microblog
表名:news
欄位名:`id`, `title`, `dates`, `contents`
回複討論(解決方案)
mysql_query($sql) or die(mysql_error()); //這樣報什麼錯
不要加@ 屏蔽了錯誤
試了下 可以顯示啊
mysql_query($sql) or die(mysql_error()); //這樣報什麼錯
貌似瞭解了
報錯--Column 'id' cannot be null
是不是我在插入id值的時候用的是null
但是視頻(PHP100出的2013版)中講的是id賦值時,想讓id自動累加
以前可以不賦值,但是現在得佔位?需要null
你的id 不是主鍵,自動成長的吧
當id是主鍵自動成長時,可以不賦值,也可以佔位,用null 或者'' 代替。
你的id 不是主鍵,自動成長的吧
我沒設id為主鍵
但是看他的視頻在資料庫中,id下面有底線,那個不是主鍵才有的嗎?
我看news表中的id後面的主鍵鑰匙是黃色,而contents的後面那主鍵鑰匙是灰色。
我把null改成''就正常了...(不是說新版不支援這樣嗎,必須規範用null?)
'' 也可以。。
'' 也可以。。
您有QQ嗎?怎麼給你傳圖片,論壇怎麼上傳不了圖片了?
我用''探索資料是添加進去了,但是在表中的id欄位都顯示0,沒有自動遞增啊
將你的id 改為 主鍵,且自動成長。
資料庫的ID設定為主鍵(顯示有鑰匙的),而且在屬性總設定為自動成長,就可以了,插入資料時,不要再給其賦值
資料庫插不了資料,而後面代碼能運行,那肯定是SQL寫錯了。看看各個欄位的類型是否匹配。id為什麼要設為null,這裡肯定錯了。
將你的id 改為 主鍵,且自動成長。
謝謝,改過來了~在增加欄位時,有個A_I選項選上就好了
之前不知道這個是什麼,後來百度了一下。
話說我需要弄個畢業設計簡易的志願者資訊管理
資料庫我應該怎麼建?
以前外教教我們是用SQL SEVER2008,有視圖,可以選擇什麼主鍵外鍵
但是我在phpmyadmin中沒有看見圖形化的功能
資料庫插不了資料,而後面代碼能運行,那肯定是SQL寫錯了。看看各個欄位的類型是否匹配。id為什麼要設為null,這裡肯定錯了。
沒有錯,就是null
新版改了