【发布时间】:2015-02-15 15:22:26
【问题描述】:
此代码在我的班级Testing 中。
class Testing {
// irrelevant code
private $dbh;
function connect(){
try{
$dbh = new PDO("mysql:host=127.0.0.1;port=3306;dbname=database", "username", "password");
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
print "Connected to MYSQL<br/><br/>";
return true;
}
catch(PDOException $e){
return false;
}
}
function setData($sql){
try{
$stmt = $dbh->query($sql); // Line 39
if($stmt == null){
return false;
}
else{
return true;
}
}
catch(PDOException $e){
$e->getMessage();
}
}
function getData($sql){
if(!setData($sql)){
print "SQL statment is null<br/><br/>";
}
else{
try{
foreach ($dbh->query($sql) as $row) {
# code...
print "<p>".$row['fName']. ' '. $row['lName']. ' ' .$row['email']. "</p>";
}
}
catch(PDOException $Exception){
$Exception->getMessage();
}
}
}
// more irrelevant code
}
然后我在 index.php 中调用 getData():
<?php
require_once "dataLayer.php";
$x = new Testing();
$x-> connect();
$x->getData("SELECT * FROM faculty");
?>
知道这段代码有什么问题吗?语法有问题吗?
【问题讨论】:
-
这段代码是否可能存在于类中?
-
你在哪里(哪个文件)定义了你的函数?你从哪里调用它(哪个文件)?
-
Deceze,是的,这段代码在一个类中。
-
@Havelock,我在你问我的其他文件中添加了代码。