嗨,我在这个东西上真的很新,所以我尝试解释非常具体的问题,我确实研究了关于stackoverflow的另一个问题,但是仍然不能解决我的问题。
我遵循youtube中的一些PHP教程,并使用xampp localhost对其进行了测试。一切正常,没有错误。
问题是我想使用我的大学服务器在线上传该项目。所以我所做的是我复制了所有项目,并更改了数据库名称,密码,dbname等。
youtube上的老师提到他正在使用PDO连接到我的SQL。但是在我复制了所有项目并使用大学服务器对其进行测试之后,它仅显示空白页面,而没有告诉我错误。所以我不知道这里是什么问题
因此,为了连接到数据库,他制作了2个文件,分别是config.php和database.php
这是config.php代码:
<?php define("DB_HOST", "localhost");
define("DB_USER", "user");
define("DB_PASS", "password");
define("DB_NAME", "name");
define("SITE_TITLE", "Easy Job"); ?>
这是database.php代码
<?php
class Database{
private $host = DB_HOST;
private $user = DB_USER;
private $pass = DB_PASS;
private $dbname = DB_NAME;
private $dbh;
private $error;
private $stmt;
public function __construct(){
//Set DSN
$dsn = 'mysql:host='. $this->host . ';dbname='. $this->dbname;
//options
$options = array(
PDO::ATTR_PERSISTENT => true,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
);
// PDO Instance
try {
$this->dbh = new PDO($dsn, $this->user, $this->pass, $options);
} catch(PDOException $e) {
$this->error = $e->getMessage();
}
}
public function query($query){
$this->stmt = $this->dbh->prepare($query);
}
public function bind($param, $value, $type = null){
if(is_null($type)){
switch(true){
case is_int ( $value ) :
$type = PDO::PARAM_INT;
break;
case is_bool ( $value ) :
$type = PDO::PARAM_BOOL;
break;
case is_null ( $value ) :
$type = PDO::PARAM_NULL;
break;
default :
$type = PDO::PARAM_STR;
}
}
$this->stmt->bindValue($param, $value, $type);
}
public function execute(){
return $this->stmt->execute();
}
public function resultSet(){
$this->execute();
return $this->stmt->fetchAll(PDO::FETCH_OBJ);
}
public function single(){
$this->execute();
return $this->stmt->fetch(PDO::FETCH_OBJ);
}
} ?>
所以我的问题再次是我将所有文件复制到服务器后,它仅显示空白页面,而没有告诉我错误是什么。
非常感谢您的关注和帮助。