我有以下脚本:
<?php
//session_start();
include('config.php');
$username=$_POST['username'];
$password=$_POST['password'];
if($_SERVER['REQUEST_METHOD'] == "POST") {
$result = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'");
if(mysql_num_rows($result) > 0) {
$_SESSION['is_logged_in'] = 1;
}
}
if(!isset($_SESSION['is_logged_in'])) {
// display your login here
echo "it worked";
header("location:account.php");
} else {
header("location:http://mysite.com/index.php");
}
?>
它输出的页面字面意思是这个;
0) { $_SESSION['is_logged_in'] = 1; } } if(!isset($_SESSION['is_logged_in'])) { // display your login here header("location:account.php"); } else { header("location:http://mysite.com/index.php"); } ?>
我不明白。 不要错过报价或类似的东西。 它曾经工作,直到我创建文件.htaccess和php.ini
config.php(数据库连接):
<?php
$link = mysql_connect('localhost', 'DB_user', 'DB_pass');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('DB', $link);
?>
它确实有效。
在网站开始提供错误500之后 - 我用Google搜索并在一个教程之后创建了其他两个文件。
的php.ini:
php_flag register_globals off
register_globals = 0
memory_limit = 64M
htaccess的:
AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php
我只是从其他网站复制粘贴此内容。
答案 0 :(得分:1)
查看网站的原始输出(查看来源)。很可能整个PHP文件按原样输出,完全不被PHP解释。浏览器只是尝试将<
和>
之间的部分解释为HTML标记,因此它们会消失。
很可能AddHandler x-mapp-php5 .php
是导致这种情况的原因,因为您的服务器上没有配置名为x-mapp-php5
的处理程序,或者处理程序配置错误。
答案 1 :(得分:0)
看起来它认为“&gt;”是HTML标记的结尾。在代码中看不到任何明显的东西。 config.php是什么样的?
答案 2 :(得分:0)
我认为您可能已将>
符号设置为PHP块的结束标记。