1

PHPスクリプトに問題があります。問題は loginpage.php にあります。addcategory.php があり、エラーなく正常に動作します。しかし、loginpage.php にアクセスしようとすると、loginpage.php の URL が表示されますが、addcategory.php に関連する error.log ファイルにエラー メッセージがスローされます。メッセージは次のようなものです。

PHP Warning:  include(../session.php): failed to open stream: No such file or directory in /var/www/RamroDeal/php/controller/admin/addcategory.php on line 2

PHP Warning:  include(): Failed opening '../session.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/RamroDeal/php/controller/admin/addcategory.php on line 2

PHP Warning:  include(../../view/fns.php): failed to open stream: No such file or directory in /var/www/RamroDeal/php/controller/admin/addcategory.php on line 3

PHP Warning:  include(): Failed opening '../../view/fns.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/RamroDeal/php/controller/admin/addcategory.php on line 3

上記のエラー メッセージの前に別のエラー メッセージがありました。以下の通りです

Cannot redeclare __autoload() (previously declared in /var/www/RamroDeal/php/controller/loginpage.php:5) in /var/www/RamroDeal/php/controller/admin/addCategory.php on line 8, referer: http://localhost/RamroDeal/php/index.php

loginpage.php を要求しているときに addcategory.php にアクセスしている理由がわかりません。助けてください!!!

phpのページは以下です。

loginpage.php

session_start();
include '../view/fns.php';

spl_autoload_register(function ($obj)
{
    $class = strtolower($obj);
    include '../class/'.$class.'.php';
});

$msg = '';
if (isset($_POST['email']) && isset($_POST['pw']))
{
    $filter = Validation::getValidationInstance();
    $email = $filter->filter($_POST['email']);
    $pw = $filter->filter($_POST['pw']);

    $login = Log::getLogInstance();

    $login->setProperty($email, $pw, Database::getDBInstance());

    $msg = $login->login();
}

//Displaying heading part of html
ramrodeal_header("Login - RamroDeal - Great Deal, Great Price");

//Displaying navigation part of html
nav();

if (empty($_SESSION['email']))
{
    //Displaying login form
    login_form();
    echo $msg;
} else{
    switch($_SESSION['type']){
        case 'administrator':
            $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/admin/adminHomepage.php';
            header('Location: ' . $home_url);('Location: ' . $home_url);
            break;

        case 'sub-administrator':
            $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/admin/subAdminHomepage.php';
            header('Location: ' . $home_url);('Location: ' . $home_url);
            break;

        case 'merchant':
            $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/merchant/merchantHomepage.php';
            header('Location: ' . $home_url);('Location: ' . $home_url);
            break;

        case 'agent':
            $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/agent/agentHomepage.php';
            header('Location: ' . $home_url);('Location: ' . $home_url);
            break;

        default:
            $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/customer/customerHomepage.php';
            header('Location: ' . $home_url);('Location: ' . $home_url);
    }
}

//Displaying footer of html
ramrodeal_footer();

addcategory.php

include('../session.php');
include('../../view/fns.php');

spl_autoload_register(function ($obj)
{
    $class = strtolower($obj);
    include '../../class/'.$class.'.php';
});


//Displaying heading part of html
ramrodeal_header("RamroDeal - Great Deal, Great Price");

//Displaying navigation part of html
nav();

//displaying add category form
addCategory();

$dealcategory = Category::getCategoryInstance(Database::getDBInstance());

if (isset($_POST['submit'])){
    $filter = Validation::getValidationInstance();
    $name = $filter->filter($_POST['name']);

    $dealcategory->setProperty($name);
    $msg = $dealcategory->addCategory();
    echo $msg;
}

$deallist = $dealcategory->getCategory();

categoryTable($deallist);

//Displaying footer of html
ramrodeal_footer();

アップデート:

両方のページのディレクトリ構造が異なります

loginpage.php は var/www/myapp/php/controller/ にあります

addcategory.php は var/www/myapp/php/controller/admin/ にあります

4

1 に答える 1