2014-09-13 208 views
1

我爲我的joomla 3網站創建了一個收集訪客電子郵件地址的表單。提交後,我收集的價值,像這樣:如何在Joomla專欄中正確存儲電子郵件?

$email = $input->post('email'); 

我然後把它們插入到數據庫中,像這樣:

$values = ...$db->quote($email)...; 

我在這裏回顧Joomla的編碼原則:http://docs.joomla.org/Secure_coding_guidelines

我見當我在這個問題中顯示的電子郵件插入數據庫時​​,@.正在從該值中除去,以幫助防止sql注入。我確信有一個簡單的Joomla解決方法來插入電子郵件,但我無法定位語法。有任何想法嗎?

回答

1

我從來沒有使用過Joomla,但在閱讀完文檔後,我認爲在檢索不刪除字符的值時,您必須指定一個過濾器。也許:

$email = $input->post->get('email', 'default_value', 'RAW'); 

這將使你輸入未經過濾的,當然你要小心這一點。也許在指南頁面列出的不同過濾器會更合適。

FYI我覺得上面的線是長手:

$email = $input->get('email', 'default_value', 'RAW'); 
+0

哇!這很好。對於從未使用Joomla的人,你確實發現修復速度很快。非常感謝 :) – Presto 2014-09-13 15:00:02

相關問題