php登录脚本可以';不可加载
我是php新手,我需要这段代码的帮助,因为当我尝试加载它时,我会得到“HTTP fout 500(内部服务器错误):”。有人能把所有的好代码都贴出来吗。谢谢php登录脚本可以';不可加载,php,mysql,login,Php,Mysql,Login,我是php新手,我需要这段代码的帮助,因为当我尝试加载它时,我会得到“HTTP fout 500(内部服务器错误):”。有人能把所有的好代码都贴出来吗。谢谢 <?php session_start(); if(empty($_POST['username']) || empty($_POST['password'])) { $notifications[] = 'Login failed! Please provide a username and password.'; }
<?php
session_start();
if(empty($_POST['username']) || empty($_POST['password'])) {
$notifications[] = 'Login failed! Please provide a username and password.';
}
if(count($notifications) == 0) {
try {
$dbh = new PDO('mysql:dbname=####;host=####',
'####', '####');
$sql = "SELECT username, verified FROM users WHERE username = :username AND
password = :password";
$sth = $dbh->prepare($sql);
$sth->execute(array(
':username' => $_POST['username'],
':password' => md5($_POST['password'])
));
$result = $sth->fetch(PDO::FETCH_ASSOC);
if($result) {
// Set session details and redirect user to members page
session_regenerate_id();
$_SESSION['username']=':username';
$_SESSION['password']=':password';
header('Location: index.php');
} else {
$notifications[] = "Username or Password incorrect.";
}
?>
使用脚本顶部的以下内容,您的页面现在将显示有关出错原因的所有信息=) 有了这些信息,其他人可以更容易地帮助你,并帮助你学习/发现错误
ini_set('display_errors', true);
error_reporting(-1);
你少了几个花括号。不确定这是否是问题的原因,但请尝试一下。添加的第三行和第四行将错误报告设置为显示在当前页面上,而不是将其记录到文件/syslog/etc
<?php
session_start();
ini_set('display_errors', true);
error_reporting(E_ALL);
if(empty($_POST['username']) || empty($_POST['password'])) {
$notifications[] = 'Login failed! Please provide a username and password.';
}
if(count($notifications) == 0) {
try {
$dbh = new PDO('mysql:dbname=####;host=####','####', '####');
$sql = "SELECT username, verified FROM users WHERE username = :username AND password = :password";
$sth = $dbh->prepare($sql);
$sth->execute(array(
':username' => $_POST['username'],
':password' => md5($_POST['password'])
));
$result = $sth->fetch(PDO::FETCH_ASSOC);
if($result) {
session_regenerate_id();
$_SESSION['username']=':username';
$_SESSION['password']=':password';
header('Location: index.php');
} else {
$notifications[] = "Username or Password incorrect.";
}
}
}
?>
您可能想清空数据库登录详细信息……乍一看,您有一个try块,但没有catch块。您是否尝试过从命令行运行php-l?这将告诉您是否存在任何解析错误。请与我们分享您迄今为止所做的任何疑难解答,以便我们减少猜测。第一步是尝试定位错误发生的位置(哪一行)。我在哪里可以看到错误?在页面self=)上,您将得到一个包含一些错误详细信息的页面,而不是500消息。我仍然得到500错误