【发布时间】:2017-11-03 21:43:03
【问题描述】:
这是我的代码:
<?php
//Connect to DB
$servername = "localhost";
$username = "root";
$password = "";
try {
$conn = new PDO("mysql:host=$servername;dbname=users", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
function printResult($conn) {
$sql = 'SELECT name FROM info';
foreach ($conn->query($sql) as $row) {
print $row['name'] . "\t";
}
}
?>
但是,当我运行它时,什么都没有打印出来。怎么了?
是的,我的桌子不是空的。我 100% 能够使用 MySQLi 面向对象选择和打印数据,但不能使用 PDO。我的代码有什么问题?
【问题讨论】:
-
运行查询后你没有获取任何东西
-
你看起来不像你调用了这个函数。如果你不调用一个函数,它就不会运行
-
@Akintunde 您可以像这样运行查询,请参阅手册中的第一个示例php.net/manual/en/pdo.query.php(实际上看起来这是手册中该示例的修改版本)。正如 Riggs 所说,很可能是因为没有调用该函数。
-
哦,我应该在哪里调用该函数?我是新手。在 foreach $sql = 选择命令之前?
-
定义好
printResult($conn)就行了。
标签: php mysql pdo phpmyadmin