因此,一段时间以来我一直在阅读有关同一问题的帖子,但没有得出结论。
我在 Windows 上用 php 7 开发了一个网站,一切都在本地主机上使用 php 内置服务器正常工作,所以我想,太好了,让我们把它放在服务器上,唯一的问题是
<?php require 'get_yards.php';?>
这行在我的 index.php 上被完全忽略了
以下是 get_yards.php 的内容。
<?php
include "/resources/library/get_yards2.php";
?>
如果我忽略这个“中间人”,我会得到一个
得到http://website/bicker.php500内部服务器错误)
以下是 get_yards2.php 的内容
<?php
require_once(__DIR__.'/../config.php');
// Get the DB connection settings
$dbHost = $config["db"]["server"]["host"];
$dbUser = $config["db"]["server"]["username"];
$dbPass = $config["db"]["server"]["password"];
$dbName = $config["db"]["server"]["dbname"];
$connectionInfo = array( "Database"=>$dbName, "UID"=>$dbUser, "PWD"=>$dbPass);
$conn = sqlsrv_connect( $dbHost, $connectionInfo);
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$query = "SELECT YardId,Yard FROM YWBYard";
$params = array();
$options = array( "Scrollable" => SQLSRV_CURSOR_KEYSET );
$result = sqlsrv_query($conn, $query);
if( $result === false){
if( ($errors = sqlsrv_errors() ) != null) {
foreach( $errors as $error ) {
echo "SQLSTATE: ".$error[ 'SQLSTATE']."<br />";
echo "code: ".$error[ 'code']."<br />";
echo "message: ".$error[ 'message']."<br />";
}
}
}
else {
$numRows = sqlsrv_num_rows($result);
while($row = sqlsrv_fetch_array($result))
{
if($row['YardId']===1){
echo "<li>"."<a href="."http://website/".">".$row['Yard'],"</a></li>";
}
elseif($row['YardId']===2){
echo "<li>"."<a href="."http://website/bicker.php".">".$row['Yard'],"</a></li>";
}
else{
echo "<li>"."<a href="."http://website/crick.php".">".$row['Yard'],"</a></li>";
}
}
}
sqlsrv_free_stmt($result);
sqlsrv_close($conn);
?>
目前我愿意尝试任何事。
以下是服务器错误日志
PHP 致命错误:require():无法在 /var/www/get_yards.php 第 2 行打开所需的“/resources/library/get_yards.php”(include_path='.:/usr/share/php')
所以我尝试用这个
<?php
require __DIR__.'/resources/library/get_yards.php';
?>
相同的服务器错误(GET 500(内部服务器错误))