今天用ThinkPHP做了一個簡單的商品發布系統,數據庫本來只有四個字段id,name,url,image。id是主鍵,name是商品名稱,url是商品鏈接,image是商品圖片,做的差不多了,發現還少一個字段,那就是價格,然后建立了字段,類型是decimal(8,2),意思是共8位,小數點占兩位,然后執行之后,頁面顯示數據插入成功,但是查看數據庫字段為0.00,如下圖:
鏈接純屬虛構,上不去哈,,,於是弄了好長時間,還是不行,然后懷疑是不是ThinkPHP對數字支持不是太好,然后干脆將類型修改成VARCHAR了,並且價格加上了單引號,結果還是一樣,納悶了,,
$Gouwu=M('Gouwu'); //實例化對象 $data['name']="淘寶女裝連衣裙"; $data['url']="http://item.taobao.com/item.htm?id=2822929"; $data['image']="http://www.baidu.com/sjsh.jpg"; $data['jiage']='6.82'; //執行插入數據data方法 if($Gouwu->data($data)->add()) echo "插入成功";
然后重啟數據庫和服務器,結果還是一樣,接着用原生代碼測試,
1 $conn=mysql_connect("localhost","root","wodemima") or die('連接錯誤:'.mysql_error()); 2 if($conn) 3 //echo "數據庫連接成功"; 4 { 5 mysql_select_db('webappsceshi',$conn); 6 mysql_query('set names utf8'); 7 $sql="INSERT INTO tb_gouwu (name,url,image,jiage) VALUES ('$data[name]','$data[url]','$data[image]','$data[jiage]')"; 8 if(mysql_query($sql,$conn)){ 9 echo "插入成功"; 10 } 11 }
運行之后沒問題,數據庫也更新了數據,這時感覺是不是ThinkPHP內部出問題了,但是挺成熟的一個框架應該挺完善的呀,又折騰了一會,發現應用目錄下有個Runtime,如下圖:
感覺這個文件夾可能是運行時的緩存,我對ThinkPHP整個目錄分布不太了解,只知道簡單的寫點類和方法,查了一下就是運行時的緩存文件,具體就不多說了,進去:
全選文件,然后刪除就行了,下一次運行程序的時候會自動更新,然后再次運行寫好的程序,插入成功,看一下數據果然插入成功了,見下圖:
這雖然是個小問題,但對於我不懂原理所以開始沒有想到,所以記錄下來,遇事多思考,基礎的東西是一定要掌握好的,也希望能幫助到大家。