2014-02-27 38 views
0

我們在PHP/MySQL中的應用程序使用PDO預處理語句來插入來自用戶的數據,而不進行任何消毒。在後期階段,用戶可以複製創建的條目,當時的數千條。我是否需要清理數據庫查詢的結果?

對於複製的一部分,我們已經測試:

VS

$pdo->exec("INSERT INTO files (`a`,`b`,`c`) VALUES . implode(', ', $loop_query)); 

$行表示從數據庫的行。 第一個比第二個慢3倍。我們想實施第二種方法。

在沒有準備好的語句的情況下使用數據庫中的數據有多安全?

+0

涉及用戶不是很安全! –

+1

你能告訴我們你的'$ loop_query'裏面有什麼嗎? –

+0

@ShankarDamodaran它在問題中回答,甚至一點都沒有關係。 –

回答

0

這是不安全的。完全。

+1

這不提供問題的答案。要批評或要求作者澄清,請在其帖子下方留言。 – gunar

+1

我恐怕你沒有讀過這個問題。 –

1

這是不安全的。正如你所提到的,DB上的數據是原始的。

如果你檢索它到編程語言(在這種情況下,PHP),並再次在一個SQL語句中使用它必須再次保護對sql注入。

難道你不能做一個insert (fields) select values而不是?

+0

不可以,因爲數據在插入 – Peeeech

+0

之前需要更新,在這種情況下適用答案的第一部分 –

相關問題