0

ここSOでエラー500の内部質問のほとんどすべてを読んでいますが、私のアプリが何であるかはまだわかりません。

これは私が得るエラーメッセージです..

Server error
The website encountered an error while retrieving http://www.pixeltouch.no/book/register.php. It may be down for maintenance or configured incorrectly.
Here are some suggestions:
Reload this webpage later.
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.

しばらくコードを見てきましたが、まだ問題が見つかりません。

ここで運がいいですか?

これは私のlogin.phpです

 <?php 
 include('/core/inc/init.inc.php');


$errors = array();

if (isset($_POST['username'], $_POST['password'])){
    if(empty($_POST['username'])){
        $errors[] = 'The username cannot be empty.';    
    }
        if(empty($_POST['password'])){
        $errors[] = 'The password cannot be empty.';
    }
//Log in
    if (valid_credentials($_POST['username'], $_POST['password']) == false ){
        $errors[] = 'Username / Password incorrect.';
    }
        if (empty($errors)){
            $_SESSION['username'] = htmlentities($_POST['username']);
            $_SESSION['uid'] = fetch_user_id($_SESSION['username']);

            header("Location: profile.php?uid=" . $_SESSION['uid']);
                die();
                echo $_SESSION['uid'];
        }
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>Pixeltouch</title> 

<link rel="stylesheet" type="text/css" href="ext/style.css" />

</head> 
<body> 
<div id="page-wrap"> 
<div id="main-content"> 
<br/>
<?php include_once('template/head.inc.php');
?>
<div id="menu"> 

<?php include_once('template/nav.inc.php');
?> 

</div> 
<!-- SKRIVBOX-->

<div>
<?php 
if(empty($errors) == false){
?>
<ul>

<?php

foreach ($errors as $error) {
    echo "<li>$error</li>";
}

?>
</ul>

<?php

}else{
echo 'Need an account ? <a href="register.php">Register here</a>'; 
}

?>



</div>
<br/>
<form method="post" action="" >
<p>
<label for="username">Username:</label>
<input type="text" name="username" id="username" value="<?php if (isset($_POST['username'])) echo  htmlentities($_POST['username']); ?>" />
</p>
<p>
<label for="password">Password: </label>
<input type="password" name="password"  id="password" />
</p>
<p>
<input type="submit" value="Login" />
</p>

</form>


<!-- SKRIVBOX END-->
</div> 

<?php include_once('template/foot.inc.php');
?>
</div>
</body>
</html>

そして私のInit.inc.phpファイル

 <?php
 session_start();

 mysql_connect("SERVER", "USERNAME", "PASSW") or die(mysql_error()) ; 
 mysql_select_db("pixeltouch2") or die(mysql_error()) ;

 $path = dirname(__FILE__);
 include("{$path}/user.inc.php");

 ?>


                                    <!--Registration/Login (START)-->
 <?php 


 $exceptions = array('register', 'login', 'user_list', 'profile', 'edit_profile');

 $page = substr(end(explode('/', $_SERVER['SCRIPT_NAME'])), 0, -4);

 if(in_array($page, $exceptions) == false){
    if (isset($_SESSION['username']) == false){
    header('Location: login.php');
    die();
    }
  }
 ?>

                                    <!--Registration/Login (END)--> 


                                        <!--User Profile (START)-->
 <?php
 $_SESSION['uid'] = 1;


 ?>

                                        <!--User Profile (END)-->

webb ホスティング事業者からエラー ログを取得しました。

[Thu May 24 11:31:24 2012] [error] 警告: include(/core/inc/init.inc.php) [function.include]: ストリームを開けませんでした: No such file or directory in /home/3 /p/pixeltouch/www/book/login.php 2 行目、リファラー: http://www.pixeltouch.no/book/login.php [2012 年 5 月 24 日木曜日 11:31:24] [エラー] PHP 警告: include() [function.include]: /home に含めるための '/core/inc/init.inc.php' のオープンに失敗しました (include_path='.:/usr/local/php5.2-suphp/lib/php') /3/p/pixeltouch/www/book/login.php 2 行目、リファラー: http://www.pixeltouch.no/book/login.php [2012 年 5 月 24 日木曜日 11:31:24] [エラー] PHP致命的なエラー: 22 行目の /home/3/p/pixeltouch/www/book/login.php の未定義関数 valid_credentials() の呼び出し、リファラー: http://www.pixeltouch.no/book/login.php

4

1 に答える 1

2

問題はここにあると思います:

include('/core/inc/init.inc.php');

先頭の「/」は、サーバーのルート ディレクトリからファイルをインクルードしようとしています。/ なしで試してください。この場合、パスは register.php があるディレクトリからの相対パスである必要があります。

于 2012-05-23T19:02:03.020 に答える