【发布时间】:2015-07-20 04:38:33
【问题描述】:
我使用 PDO 连接数据库并从表中提取记录。
我只想提取最新的记录,但是当我运行以下代码时不回显任何内容..
SELECT * FROM uds ORDER BY price DESC LIMIT 1
我的php代码
<?php
$params =null; //or any params
$mrkfPDO = new PDO('mysql:host=localhost;dbname=usd', 'root', '',
array(
PDO::ATTR_PERSISTENT => true,
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
)
);
$mrkfStatement = $mrkfPDO->prepare("SELECT * FROM `uds` ORDER BY price DESC LIMIT 1 ");
$mrkfStatement->execute($params);
$pays = $mrkfStatement->fetchAll(PDO::FETCH_ASSOC);
for($i=1; $i<count($pays); $i++) // see the change
{
$color = 'black';
if($pays[$i]['price'] < $pays[($i-1)]['price'])
$color="red";
elseif($pays[$i]['price'] > $pays[($i-1)]['price'])
$color = 'green';
else
$color = 'black';
echo "<tr>
<td>
<span style='color: $color'>"
.$pays[$i]['price'].
"</span>
</td>
</tr>";
}
?>
描述代码:
使用 curl 每 1 分钟访问另一个网站并获取美元价格,然后将其插入数据库...
我的 db 表有 2 个字段 .... id (AUTO_INCREMENT) $ price ..
在顶部代码中:
如果新价格 = 最新价格,则以背面颜色回显数字。
和
如果新价格>最新价格与绿色相呼应。
和
如果新价格
现在。用 foreach 回显所有记录。我只想要最新的记录(2000)...
表格
id | price
1 | 2300
2 | 2300
3 | 2301
4 | 2290
5 | 2000
【问题讨论】:
-
如果只有一条记录不需要循环。
-
怎么只能回显不循环?
-
不确定你的意思,
echo 'hi';。 -
我只想回显最新记录 id 5 = 2000 没有所有记录
-
你说的正是那个评论,我已经回复了。非常基本的东西,php.net/manual/en/function.echo.php.