我在这个主题上尝试了各种其他线程,但它没有用。所以我写了我的具体案例。我再说一遍,我已经尝试过其他线程,但尝试别人建议我没有得到结果。
所以,我正在创建自己的小cms,不是很有经验。 我的结构是这样的:
/includes/config.php (class config.php)
/index.php
/other.php
现在我想在文件夹中创建一个管理区域:
**/admin**
然后我会调用config.php文件以构建查询和其他所有内容,但我不能。我试过这个:
require_once $ _SERVER ['DOCUMENT_ROOT']。 '/includes/config.php';
但它不起作用,我该如何解决?
编辑:
包括/ config.php中
class db {
private $conn;
private $host;
private $user;
private $password;
private $baseName;
private $port;
private $Debug;
private $stmt;
function __construct($params=array()) {
$this->conn = false;
$this->host = 'localhost'; //hostname
$this->user = ''; //username
$this->password = ''; //password
$this->baseName = ''; //name of your database
$this->port = '3306';
$this->debug = true;
$this->connect();
}
function __destruct() {
$this->disconnect();
}
function connect() {
if (!$this->conn) {
try {
$this->conn = new PDO('mysql:host='.$this->host.';dbname='.$this->baseName.'', $this->user, $this->password, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
}
catch (Exception $e) {
die('Error : ' . $e->getMessage());
}
if (!$this->conn) {
$this->status_fatal = true;
echo 'Connection DB failed';
die();
}
else {
$this->status_fatal = false;
}
}
return $this->conn;
}
function disconnect() {
if ($this->conn) {
$this->conn = null;
}
}
public function query($query){
$this->stmt = $this->conn->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_ASSOC);
}
public function single(){
$this->execute();
return $this->stmt->fetch(PDO::FETCH_ASSOC);
}
public function rowCount(){
return $this->stmt->rowCount();
}
public function lastInsertId(){
return $this->conn->lastInsertId();
}
public function beginTransaction(){
return $this->conn->beginTransaction();
}
public function endTransaction(){
return $this->conn->commit();
}
public function cancelTransaction(){
return $this->conn->rollBack();
}
public function debugDumpParams(){
return $this->conn->debugDumpParams();
}
}
$ database = new db(); $ pdo =& $数据库;
答案 0 :(得分:0)
如果您来自/ admin文件夹,您可以使用../includes/config.php简单地上传文件夹,2个点表示您上升1个目录,然后是目录' includes&# 39;然后是config.php文件。
另一个解决方案是使用.htaccess文件(如果您使用的是Apache)将所有请求路由到1个文件,例如index.php文件。这样,您总是来自同一个文件并从那里路由您的应用程序。
答案 1 :(得分:0)
实施例
include_once 'includes/user.php';
$users = new User($pdo);
$user =& $users;
我该如何解决?通过添加自动加载?我去过,但我无法弄清楚如何使用它.. @Millanzor