2013-11-28 20 views
1

當我試圖用store_saltFALSE它給下面的錯誤笨:離子權威性庫給鹽錯誤而創建新的用戶

$config['salt_length'] = 10; 
$config['store_salt'] = FALSE; 

這裏創建用戶錯誤

Error Number: 1364 

Field 'salt' doesn't have a default value 

INSERT INTO `users` (`first_name`, `last_name`, `company`, `phone`, `username`, `password`, `email`, `ip_address`, `created_on`, `last_login`, `active`) VALUES ('xxx', 'yyy', 'zzz', '466', 'xxx.yyy', '', '[email protected]', '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0', 1385641604, 1385641604, 1) 

Filename: C:\xampp\htdocs\atlas-dev\system\database\DB_driver.php 

Line Number: 330 

當我嘗試使用store_salTRUE時,它沒有給出錯誤,但是它沒有考慮到密碼正確並且用戶無法登錄。

你能幫忙解決嗎?

回答

1

錯誤編號:1364最有可能是由於默認未設置或空值不允許。

將salt字段從「NOT NULL」更改爲「ALLOW NULL」。

ALTER TABLE用戶MODIFY salt varchar(40)null;

這應該重置其默認爲「允許空」,讓您插入一條記錄無鹽字段中的值

如果使用鹽,

$config['store_salt'] = TRUE; 

它會改變你的密碼加密算法, 默認密碼,「密碼」,修改 fbaa5e216d163a02ae630ab1a43372635dd374c0默認鹽。

0

此'store_salt'設置顯然告訴Ion Auth是否在salt字段中插入某些內容。問題是這個字段沒有默認值,並且你沒有插入任何內容。 因此,要麼將字段定義更改爲默認值,要麼使用salt。

+0

一兩件事,我理解,這不發送任何價值。但比我可以設置鹽的默認值?在ion_auth配置文件或在哪裏? –

+0

不知道,不是IonAuth用戶。你問的問題是一個與你的表是如何構成的。 – Narf