2016-06-17 179 views
0

我最近升級了我的服務器並做了一個平滑的過渡,但是我得到一個「MySQL Erorr」,並且我確定了哪些功能無法正常工作。詳細信息不存入數據庫

此代碼:

 $date = date("M jS"); 
     $articleTime = date("g:iA T"); 
     $articleTime = str_replace('EDT', 'EST', $articleTime); 
     $ip = getenv("REMOTE_ADDR");   
     $insertYo = "INSERT INTO activity (date, articleTime, action, icon, ip) VALUES ('$date', '$articleTime', '<strong><a href=\"/articles\">\Archives</a></strong> viewed on $date @', 'fa-archive', '$ip')";   
     mysql_query($insertYo) or die('MySQL Error.'); 

沒有正確插入。我的數據庫設計是如何設置的 「活動」 是:

enter image description here

Database Design

我在這裏幹什麼什麼了嗎?我相信它也可能與我的數據庫有關,但是佈局的其他部分在該頁面上沒有此代碼的情況下工作。

+0

http://php.net/manual/en/mysqli.error.php –

回答

2

您的數據表有七列不可空,且沒有默認字段值,但您的INSERT語句只指定五列。你不能這樣做,因爲數據庫需要知道要在其他兩列中放置什麼。將這些列添加到您的INSERT語句中,修改表使這些列可以爲空,或爲這些列提供默認值。

您使用的解決方案取決於應用程序的業務需求。例如,您需要處理的列是articleid和articleTitle。在您的應用程序的上下文中,活動是否與任何特定的文章ID沒有關聯?如果是這樣,那麼該列應該是可空的。

作爲一個易於理解的現實世界的類比,員工通常必須擁有EmployeeId,但他們不一定必須具有HeadquartersDeskNumber。也許他們是一個擁有家庭辦公室的流動銷售人員。

相關問題