发布变量新行

时间:2014-01-18 14:53:58

标签: php mysql post

我如何获得此语法?真的有问题......

for( $i = 1; $i <= $count; $i++ )
{
    $typeofunit = $_POST['typeofunit'.$i];}
    $sql="INSERT INTO equips (typeofunit)
    VALUES
    ('$_POST[typeofunit]')"; **??** ('$_POST[$typeofunit]')"; **???**
}

1 个答案:

答案 0 :(得分:2)

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注入。在一个理想的世界中,你会转而使用更安全的预备语句。