我怎么得到这个语法?真的有问题。。。
for( $i = 1; $i <= $count; $i++ )
{
$typeofunit = $_POST['typeofunit'.$i];}
$sql="INSERT INTO equips (typeofunit)
VALUES
('$_POST[typeofunit]')"; **??** ('$_POST[$typeofunit]')"; **???**
}
最佳答案
把INSERT
语句放在循环之外,因为只需要一次。然后在每个循环迭代期间追加到它。最后,从查询中删除会导致语法错误的最后一个逗号。
$sql="INSERT INTO equips (typeofunit) VALUES";
for( $i = 1; $i <= $count; $i++ )
{
$typeofunit = $_POST['typeofunit'.$i];}
$sql .= "('" . mysql_real_escape_string($_POST['typeofunit'.$i]) . "'),";
}
$sql = rtrim($sql, ',');
您会注意到我也转义了
POST
变量。必须这样做才能防止SQL注入。在一个理想的世界里,你会转向更安全的准备好的陈述。