2

私が開発しているサイトがありますが、発生している問題を本当に理解していません...

ホームページのテーブル内にリンクがあります。それをクリックすると、ハイパーリンクされたページにいくつかのGETパラメータを提供することになっています。受信ページはそれを処理し、データベースを更新してホームページにリダイレクトします。

require_once()ホームページに「」として必要なphpファイルをいくつか含めました。しかし、処理ページではできません。それはいくつかの警告を与えます。私はその理由を本当に理解しておらず、この問題の解決策もわかりません。助けてください!

ホームページのコード:

<?php require_once("includes/db_connection_open.php"); ?>
<?php require_once("includes/functions.php"); ?>
<?php include("includes/header_main.php"); ?>

<?php
 echo "<td><a href='includes/process.php?id=".$arr['id']."'>Process</a></td>";
?>

<?php include("includes/body_footer_main.php"); ?>
<?php require_once("includes/db_connection_close.php"); ?>

処理ページのコード:

<?php require_once("includes/db_connection_open.php"); ?>
<?php require_once("includes/functions.php"); ?>

//Processing codes

<?php require_once("includes/db_connection_close.php"); ?>

私が受け取っている警告は次のとおりです。

警告:require_once(includes / db_connection_open.php)[function.require-once]:ストリームを開くことができませんでした:1行目のC:\ xampp \ htdocs \ MySite \ include\process.phpにそのようなファイルまたはディレクトリはありません

致命的なエラー:require_once()[function.require]:C:\ xampp \ htdocs \ MySite \includes\でrequired'includes/ db_connection_open.php'(include_path ='。;C:\ xampp \ php \ PEAR')を開くことができませんでした1行目のprocess.php

4

2 に答える 2

2

includesエラーが「1行目のC:\ xampp \ htdocs \ MySite \ include \ process.phpにある」と表示されているため、現在ディレクトリにいるようです。

しかし、あなたはまだ内で要求しようとしているincludes/のでincludes/includes/、あなたはあなたのファイルがないところに行き着きます。

たとえば、AJAXだけでなくインクルージョンによってロードされるファイルがあるために正しいパスを見つけるのに問題がある場合は、正しいパスがあることを確認するために__DIR__(またはdirname(__FILE__)古いPHPインストールで)使用できます。

したがって、process.phpその例は次のようになります。

require_once __DIR__.'/db_connection_open.php';
于 2011-10-28T09:48:11.973 に答える
0

エラーは、ファイルが試行している場所に存在しないことを示しているようです。見た目では、process.phpファイルはすでにincludesディレクトリに存在しているためrequire_once()、ページのステートメントで、次のようにリンクを更新する必要があります。

<?php require_once("db_connection_open.php"); ?>
<?php require_once("functions.php"); ?>
//Processing codes
<?php require_once("db_connection_close.php"); ?>

お役に立てば幸いです。

于 2011-10-28T09:47:33.210 に答える