我已經使用這個代碼只是增加了一個空密碼字段添加到MySQL表某種密碼。用隨機選擇的密碼填充字段的正確方法是什麼?每個記錄都有不同的密碼?密碼寫入表後,我打算通過電子郵件發送每條記錄的建議,告知他們新創建的密碼(然後給他們一個創建自己的密碼的機會,但這是一個單獨的問題)。填充空密碼字段
謝謝。
我已經使用這個代碼只是增加了一個空密碼字段添加到MySQL表某種密碼。用隨機選擇的密碼填充字段的正確方法是什麼?每個記錄都有不同的密碼?密碼寫入表後,我打算通過電子郵件發送每條記錄的建議,告知他們新創建的密碼(然後給他們一個創建自己的密碼的機會,但這是一個單獨的問題)。填充空密碼字段
謝謝。
我通常會創建一個字符串,我認爲它是有效的密碼字符。然後我在循環中使用rand()和substr()來創建隨機密碼,一次一個字符。
然後,一旦您獲得密碼,您就可以通過電子郵件向客戶發送HTTPS鏈接,以便他們在有限的時間內「拾取」密碼。
讓用戶更改密碼後,應該只在數據庫中存儲密碼的散列。
當然,這可以通過刪除密碼並只使用唯一鏈接來簡化,並要求他們在點擊安全鏈接時設置密碼。
您可以使用CHAR(FLOOR(RAND()*10) MOD 26 + ORD('a'))
連接幾次從英文字母中獲得隨機字符串。
編輯:乘以1000這樣的:CHAR((FLOOR(RAND()* 1000)MOD 26)+ ORD( 'A'))
您可以使用類似:
SUBSTRING(MD5(RAND()) FROM 1 FOR 6)
作爲使用插入查詢插入隨機密碼的密碼。 希望有幫助
FROM 1 for 6 - 這是什麼意思? – DanielAttard
將密碼的散列存儲在數據庫中可能是一個好主意。 –