随着 MYSQL 函数的贬值,我一直在尝试将我的代码移动到 PDO,但是我已经习惯了一些我无法在 PDO 中复制的 SQL 功能。这是我打印出包含来自 Twitter 的信息的表格的代码:
<?php $date = date('H:i:s', time()); ?>
<h3>Twitter Feed @ <?php echo "$date"; ?></h3>
<?php
/*** mysql hostname ***/
$hostname = 'localhost';
/*** mysql username ***/
$username = 'MySQL_USER';
/*** mysql password ***/
$password = 'SECRET';
try {
$dbh = new PDO("mysql:host=$hostname;dbname=DB_NAME", $username, $password);
/*** echo a message saying we have connected ***/
echo 'Printing Tweets<br />';
/*** The SQL SELECT statement ***/
$sql = "SELECT * FROM tweets";
foreach ($dbh->query($sql) as $row)
{
print $row['created_at'] .' <br /> '. $row['tweet_text'] .' <br /> '. $row['screen_name'] . ' <br /> '. $row['name'] .' <br /> '. '<br /><br />';
}
/*** close the database connection ***/
$dbh = null;
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
三个问题:
此代码输出首先存储的第一个推文。我如何订购它以使最后一条推文排在第一位?
在 MYSQL 我会写
$result = mysql_query("SELECT * FROM tweets ORDER BY
created_atDESC");
该表包含指向用户图片的链接,我如何将其打印为图像而不是文本?
同样,在 MySQL 中我会写:
echo "<img src='";
echo stripslashes($row[9]);
echo "'>";
我不必记住密码和用户名,我总是将连接详细信息放在一个单独的包含文件中 - 例如 database_connection.php - 这是受密码保护的。这在 PDO 中可能吗?
在 MySQL 中:
require_once 'includes/database_connection.php' ;