如果我需要在php中循环以插入最多6行的数据。因为如果我使用这个代码,它只会出现一次插入而不会重复。
while ($row=pg_fetch_row($sql1))
{
$sqlinsert="insert into rpt_printing_detail values ( '$row[0]','$row[1]','$row[2]','$row[3]','$row[4]','$row[5]','$row[6]','$row[7]','$row[8]','$row[9]')";
}
我的代码只插入一个插入内容:
insert into rpt_printing_detail values ( '201501', 'Detail Billing', '1', '1', '16397', '0', '0', '0', '0', '0' )
答案 0 :(得分:0)
您的代码将SQL查询创建为字符串。它对数据库没有任何作用。
假设循环外的后续语句在变量中运行查询,如:
while ($row=pg_fetch_row($sql1))
{
$sqlinsert="insert into rpt_printing_detail values ( '$row[0]','$row[1]','$row[2]','$row[3]','$row[4]','$row[5]','$row[6]','$row[7]','$row[8]','$row[9]')";
}
pg_query($sqlinsert);
由于只有一个查询 - 你用每个循环覆盖它 - 它只进行一次更改。
无论这里有什么问题,你都有一个重大错误。阅读the PHP documentation on SQL injection,然后使用pg_query_params
或最好使用PDO。