2015-11-20 31 views
0

我正在使用此問題: 我在fomrs中使用日曆表單字段,MySQL數據庫字段爲此設置爲DATE並且默認爲0000 -00-00在XML 表單域定義使用Joomla 3.4.5窗體字段日曆顯示1970-01-01而不是空的

format="%Y-%m-%d" 
default="0000-00-00" 

在前端總是出現1970-01-01而不是一個空場。 我搜索了網絡,但無法找到一個解決方案如何獲得一個空的字段,如果數據庫中有零。 Anyoune能幫助我嗎?

回答

0

您已將默認設置爲:0000-00-00。

這是一個時間的方式之前,計算機被髮明,PHP默認回到下方,如果日期是無效的或無效

1970-01-01

因此它會默認爲,作爲其遠儘可能回去。

設置實際的默認日期或設置爲NOW以在當前日期加載。

+0

不要以爲你明白了。如果數據庫中沒有日期(空日期),我希望j3日曆字段顯示一個空輸入。但我找到了解決方案:將數據庫列從DATE設置爲DATETIME,並將默認值設置爲0000-00-00 00:00:00解決了此問題:如果數據庫中存在缺省值,jommla將不會顯示空輸入。 –

0

用於存儲此日期的字段不允許使用NULL值,因此將YANG作爲默認值(它是日期字段)。因此,我決定查看當我更改數據庫中的字段以允許NULL值並將特定記錄的值設置爲NULL時發生了什麼。 Et瞧......問題解決了。沒有更多的「奇怪的日期」顯示。

但是...當保存日期字段,Joomla決定它應該存儲爲0000-00-00,使顯示虛假再次。爲此,我看了一下這個模型並添加了一行:

if ($data->birth_date == '0000-00-00') { $data->birth_date = ''; } 

在保護函數loadFormData()中返回$ data之前。

我們完成它,上市以來仍顯示「0000-00-00」我看了一下這個模型的上市,並添加

$oneItem->birth_date = ($oneItem->birth_date == '0000-00-00') ? "" : $oneItem->birth_date; 

之前它返回的公共職能的$項目getItems()。

+0

這不是一個答案..這是一個「我去年夏天做的」獨白,幾乎不可能通過。 – Ajean

相關問題