【发布时间】:2014-08-19 00:50:56
【问题描述】:
我需要查询一个 MySQL 数据库,使用部分结果为 Postgres 数据库编写查询,然后在 HTML 表中显示两个数据集的结果。
我有这样一个 MySQL 查询的结果
$orderid = array();
while ($row = mysql_fetch_array($qry_result)) {
$orderid[] = $row[order_id];
}
$orderlist = implode(', ', $orderid );
PS:是的,我知道我应该使用 mysqli/PDO。旧习惯难改。
$query2 = "SELECT
data1,
data2,
total
FROM order_summary os
WHERE os.order_id IN ($orderlist)
LIMIT 25";
所以这行得通,没有我想要的那么快,但它确实有效。 (关于更好的处理方法的建议也很感激!)
现在,当我尝试显示它时,我正在做这样的事情:
$result2 = pg_query($query2) or die('Query failed: ' . pg_last_error());
while ($rowrs = pg_fetch_array($result2, null, PGSQL_ASSOC)) {
$display_string .= "<tr class='text-center'>";
$display_string .= "<td>$rowrs[data1]</td>";
$display_string .= "<td>$rowrs[data2]</td>";
$display_string .= "<td>\$$rowrs[total]</td>";
$qry_result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($qry_result)){
$display_string .= "<td>$row[email]</td>";}
}
//magical other things unrelated to the table
$display_string .= "</tr>";
$display_string .= "</table>";
echo $display_string
问题是来自 MySQL 的结果要么显示在 HTML 表中的单行中,要么一遍又一遍地重复。预期结果将是与 order_id 配对的电子邮件 - 每行一次。
我觉得我在这里做了一些愚蠢的事情,这很容易解决。非常感谢任何帮助。
【问题讨论】:
标签: php html mysql postgresql