需要一次不需要';我不能用PHP工作

需要一次不需要';我不能用PHP工作,php,Php,如果我尝试在浏览器中打开此简单文件: <?php require_once 'classes/settings.php'; class Mysql { private $conn; function __construct() { $this->conn = new mysqli (DB_SERVER,DB_USER,DB_PASSWORD,DB_MEMBER) or die('There was a prob

如果我尝试在浏览器中打开此简单文件:

<?php

require_once 'classes/settings.php';

class Mysql {
    
    private $conn;
    
    function __construct() {
        
        $this->conn = new mysqli (DB_SERVER,DB_USER,DB_PASSWORD,DB_MEMBER) or die('There was a problem connecting to the database.');
        if ($this->conn->connect_errno) {
echo "Failed to connect to MySQL: (" . $this->conn->connect_errno . ") " . $this->conn->connect_error;
}
 //echo $mysqli->host_info . "\n";
    }
    
    function verify_Username_and_Pass($un, $pwd) {
        
        $query = "SELECT *
        FROM users
        WHERE username = ? AND password = ?
        LIMIT 1";
        
        if($stmt = $this->conn->prepare($query)) {
            
            $stmt->bind_param('ss',$un,$pwd);
            $stmt->execute();
            
            if($stmt->fetch()) {    
                $stmt->close();
                return true;
            }
        }
    }
}
 ?>
我不明白为什么,文件
setting.php
在该文件夹中,那么问题出在哪里


编辑

如果我对另一个文件执行相同的操作,例如:

<?php 
require_once 'classes/settings.php';


 $host = "localhost";
 $user = "root";
 $pass = "pass";

 $databaseName = "membership";
 $tableName = "users";

 //--------------------------------------------------------------------------
 // 1) Connect to mysql database
 //--------------------------------------------------------------------------

 $con = mysql_connect($host,$user,$pass);
 $dbs = mysql_select_db($databaseName, $con);

 //--------------------------------------------------------------------------
 // 2) Query database for data
 //--------------------------------------------------------------------------
 $result = mysql_query("SELECT * FROM $tableName");            //query
 $array = mysql_fetch_row($result);                          //fetch result    

 //--------------------------------------------------------------------------
 // 3) echo result as json 
 //--------------------------------------------------------------------------
 echo json_encode($array);

?>

您的脚本,
var/www/classes/Mysql.php
,已经在classes目录中。包含的文件位于同一目录中。删除
类/
并使用:

require_once 'settings.php';

由于您已经在classes文件夹中,因此您有两个选项

第一种选择是使用相对路径

require_once'settings.php'

第二种选择是使用绝对路径


require\u once$\u服务器['DOCUMENT\u ROOT']/class/settings.php'
尝试使用
$\u服务器['DOCUMENT\u ROOT']

require_once ($_SERVER['DOCUMENT_ROOT'] . '/classes/settings.php');

你不应该在这里只需要“settings.php”吗?或者“../classes/settings.php”,如果您更勤奋的话。)文件名是settings.php还是setting.php?可能是问题,所以请尝试绝对路径,看看会发生什么/var/www/classes/settings.phpWhat
echo'File:',\uuuuuu File,“
\n”;回显“cwd:”,getcwd(),“
\n”在需要一次打印之前?请记住,相对路径是相对于当前工作目录(cwd)的。@Piero如果这个答案解决了您的问题,您应该接受它。
require_once ($_SERVER['DOCUMENT_ROOT'] . '/classes/settings.php');