フォルダー外のファイルで使用するときに問題を含めて必要とする

StackOverflow https://stackoverflow.com/questions/1416638

  •  06-07-2019
  •  | 
  •  

質問

通常、この行を使用して現在のフォルダーからファイルをインポートしますが、ローカルホストサーバーでは正常に動作します

require("../DataBase.class.php"); 

しかし、ウェブサイトにスクリプトをアップロードすると、この警告が表示されます

  

警告:   include(../ DataBase.class.php)   [function.include]:開くことに失敗しました   ストリーム:そのようなファイルまたはディレクトリはありません

役に立ちましたか?

解決

セーフモードは" ../"を好みません。したがって、常に次のようなものを使用する必要があります

require_once realpath(dirname(__FILE__) . '/..') . '/file.php';

他のヒント

おそらく起こっているのは、php.iniのinclude_path設定がサーバー上のPHP / Apacheのローカルインストールと異なることです。これに加えて、.. /はファイルが置かれている現在のディレクトリを指しているのではなく、現在のディレクトリの親ディレクトリを指していることに注意してください。ドキュメントルート、次に次のようなファイルを含めます。

<?php

$full_path = "/var/www/htdocs"; // this should be your website's full path
require( $full_path . "/DataBase.class.php" );

?>

親ディレクトリでファイルを探しています。現在のディレクトリで使用したい場合:

require 'Database.class.php';

おそらく、ローカルWebサーバーでは、リモートサーバー上に存在しない何らかの理由で親ディレクトリにコピーがあります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top