0

なぜphpがファイルが存在するのに存在しないと私に言い続けるのか疑問に思います。

これは私のコードとエラーです

    require_once('/book/admin/bin/class/db.class.php');

エラーとスタックトレース

   Warning: require_once(/book/admin/bin/class/db.class.php) [function.require-once]: failed to open stream: No such file or directory in C:\wamp\www\book\forms\add.php on line 3
    Call Stack
    #   Time    Memory  Function    Location
    1   0.1479  408440  {main}( )   ..\add.php:0

これは頻繁に発生するため、この厄介な再発問題を修正したいと思います。私も質問しているように、サイトのルートから読み取るようにWebサーバーを設定する方法はありますか?それとも私は何が起こっているのか誤解していますか?

これは、ディレクトリ構造がどのように見えるかです。

Wampサーバーを使用する

c:\wamp\www\book <- my site root
c:\wamp\www\book\forms <- where add.php is located
c:\wamp\www\book\admin\bin\class\db.class.php

ファイルパスを「/book/bin/」として使用できないのはなぜですか

ありがとう、C

4

1 に答える 1

1

Windowsの絶対パスは、ドライブ文字で始まります。使用できます

require_once 'c:\wamp\www\book\admin\bin\class\db.class.php';

または、相対パスを使用できます。

getcwd();を使用して「開始」するパスを確認します。これはおそらく、スクリプトが「開始」するディレクトリです。たとえば、index.phpが配置されているディレクトリです。

echo getcwd();

このディレクトリに関連するファイルを要求できます。

ただし、APPLICATION_DIRなどと呼ばれる定数を定義し、そこからリンクを構築することをお勧めします。

define('APPLICATION_DIR', 'c:\wamp\www\book');
require_once APPLICATION_DIR.'\admin\bin\class\db.class.php';
于 2011-02-19T05:04:27.280 に答える