2012-02-29 57 views
2

我想INSERT一组(以阵列的形式)提交的$ _ POST数据作为如何使用mysql_real_escape_string作为数组?

foreach($_POST['data'] as $single) { 
$set[]="('static', '$single')"; 
} 
$sets=implode(", ", $set); 
mysql_query("INSERT INTO table (Static, Data) VALUES $sets"); 

如果是使用use mysql_real_escape_string避免SQL注入的最佳场所,因为该数据是由用户提交的。

回答

6

在去你的第一个foreach之前。

$_POST['data'] = array_map("mysql_real_escape_string", $_POST['data']); 
-1

尝试这样的:

foreach($_POST['data'] as $single) 
{ 
    $set[]="('static', mysql_real_escape_string($single))"; 
} 
$sets = implode(", ", $set); 
mysql_query("INSERT INTO `table` (`Static`, `Data`) VALUES ".$sets."");