请求有关基本php PDO连接的帮助
(免责声明: 这段代码来自《PHP解决方案:轻松的动态Web设计》一书的第11章,版权所有David Powers,2006。我认为这是一个很好的资源,从一个显然非常新手的角度来说。这是整本书的源代码。这段代码中的一些代码与书中的代码有点不同。) **编辑:根据Benny Hill的第一条评论更正了代码 **编辑解决方案:在Benny Hill的帮助下结案。 解决方案:更正代码后,我必须手动将浏览器指向以下文件:http://localhost/siteG/mysql/pdo.php(请求有关基本php PDO连接的帮助,php,mysql,pdo,Php,Mysql,Pdo,(免责声明: 这段代码来自《PHP解决方案:轻松的动态Web设计》一书的第11章,版权所有David Powers,2006。我认为这是一个很好的资源,从一个显然非常新手的角度来说。这是整本书的源代码。这段代码中的一些代码与书中的代码有点不同。) **编辑:根据Benny Hill的第一条评论更正了代码 **编辑解决方案:在Benny Hill的帮助下结案。 解决方案:更正代码后,我必须手动将浏览器指向以下文件:http://localhost/siteG/mysql/pdo.php( 有人能
有人能帮我弄清楚浏览器为什么输出原始php代码吗?您的conn_pdo.inc.php文件应该如下所示:
<?php
// call this function like this: $conn=dbConnect('admin') or, admin can be query
function dbConnect($type){
if ($type == 'query'){
$user = 'root';
$pwd = 'root';
}
elseif ($type == 'admin'){
$user = 'root';
$pwd = 'root';
}else{
exit('Unrecognized connection type');
}
try{
$conn = new PDO('mysql:host=localhost;dbname=basicgallery', $user, $pwd);
return $conn;
}
catch (PDOException $e){
echo 'Cannot connect to database';
exit;
}
}
?>
我删除了
dbConnect
的第二个声明和dbConnect
的第一个声明的右括号,这里有很多问题。您有两个dbConnect
函数。“function”拼写错误。这里不应该有分号:function dbConnect()
…当,为这些愚蠢的错误感到抱歉。我已经更正了它们,但是在加载pdo.php文件时,我仍然从浏览器收到相同的消息。您看到任何其他错误吗?Benny,非常感谢您的帮助。这些代码对您有效吗?对我仍然无效--浏览器仍在输出相同的消息。@PatrickMeaney这对我有用。我收到消息“无法连接到数据库”.@PatrickMeaney-我刚刚将用户名/密码和表名更改为在我的环境中有效的值-查询有效并回显了我使用的表中的行数。非常好,我很高兴听到它起作用。我今天晚些时候将在另一台机器和服务器上测试它。@PatrickMeaney-您可能想要复制/粘贴它这个页面上的代码-我感觉你的源代码中有一个离奇的?>
。如果你在浏览器中看到PHP代码,那是因为服务器已经停止解析PHP代码。
<?php
// call this function like this: $conn=dbConnect('admin') or, admin can be query
function dbConnect($type) {
if ($type == 'query') {
$user = 'root';
$pwd = 'root';
}
elseif ($type == 'admin') {
$user = 'root';
$pwd = 'root';
} else {
exit('Unrecognized connection type');
}
}
function dbConnect() {
try {
$conn = new PDO('mysql:host=localhost;dbname=basicgallery', $user, $pwd);
return $conn;
}
catch (PDOException $e) {
echo 'Cannot connect to database';
exit;
}
} ?>
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<?php
include('../includes/conn_pdo.inc.php');
// connect to MySQL
$conn = dbConnect('query');
// Prepare sql query
$sql = 'SELECT COUNT(*) FROM images';
// submit the query and capture the result
$result = $conn->query($sql);
$error = $conn->errorInfo();
if (isset($error[2])) die($error[2]);
// find out how many records were retrieved
$numRows = $result->fetchColumn();
echo $numRows;
?>
</body>
</html>
<?php
// call this function like this: $conn=dbConnect('admin') or, admin can be query
function dbConnect($type){
if ($type == 'query'){
$user = 'root';
$pwd = 'root';
}
elseif ($type == 'admin'){
$user = 'root';
$pwd = 'root';
}else{
exit('Unrecognized connection type');
}
try{
$conn = new PDO('mysql:host=localhost;dbname=basicgallery', $user, $pwd);
return $conn;
}
catch (PDOException $e){
echo 'Cannot connect to database';
exit;
}
}
?>