我使用代码将数据从循环中的数组插入到DB中。
foreach ($sumdrinks1 as $key => $value) // insert each part of array into DB
{
mysql_query("INSERT INTO table (liq_sum, liq_name, bartender)
VALUES ('$value','$key','$id'))";
} 因为我不需要$value = 0的结果,所以我运行另一个查询将它们从数据库中删除
mysql_query("DELETE FROM table WHERE liq_sum = 0");有没有办法在插入查询中添加if条件,而不是插入和删除条件?我试过这样想:
("INSERT INTO table (liq_sum, liq_name, bartender)
VALUES ('$value','$key','$id') where '$value' > 0)";不起作用:(
谢谢。
发布于 2013-03-06 14:37:33
你可以用php来做。
foreach ($sumdrinks1 as $key => $value) // insert each part of array into DB
{
if($value>0)
mysql_query("INSERT INTO table (liq_sum, liq_name, bartender) VALUES ('$value','$key','$id')");
} 发布于 2013-03-06 14:37:35
使用if语句检查该值:
foreach ($sumdrinks1 as $key => $value)
{
if ($value > 0) {
... // do insert
}
} 请注意: mysql_扩展已弃用,并且您的代码以这种方式易受SQL injection的攻击,请改用PDO或预准备语句。
发布于 2013-03-06 14:38:40
你可以在php代码中检查这个条件。
foreach ($sumdrinks1 as $key => $value) // insert each part of array into DB
{
if($value > 0) {
mysql_query("INSERT INTO table (liq_sum, liq_name, bartender) VALUES ('$value','$key','$id'))";
}
}https://stackoverflow.com/questions/15240596
复制相似问题