Я пытаюсь превратить свой последний проект в своего учителя, переместив его из Cloud9 в Heroku. К сожалению, код, управляющий процессом входа в систему проекта, содержит ошибку, из-за которой он не может отображать большую часть моего сайта моему учителю.
Вот код
//login
<?php
session_start();
include 'dbConnection.php';
$conn = getDatabaseConnection();
$username = $_POST['username'];
$password = sha1($_POST['password']);
//echo $password;
//Watch out! Sql injection risk
/*$sql = "SELECT *
FROM q_admin
WHERE username = '$username'
AND password = '$password'";*/
$sql = "SELECT *
FROM f_admin
WHERE username = :username
AND password = :password";
$namedParameters = array();
$namedParameters[':username'] = $username;
$namedParameters[':password'] = $password;
$stmt = $conn->prepare($sql);
$stmt->execute($namedParameters);
$record = $stmt->fetch(PDO::FETCH_ASSOC);if (empty($record)) {
echo "Wrong username or password";
header("Location: login.php?login=false");
exit;
} else {
$_SESSION['username'] = $record['username'];
$_SESSION['userId'] = $record['userId'];
header('Location: admin.php'); //redirects users to admin page
}
?>
Приведенный выше код должен искать в моей базе данных SQL имена пользователей и пароли, прежде чем решать, стоит ли пускать пользователя на страницу администратора сайта.
Вместо этого пользователь выводится на пустую страницу с ошибкой 500 независимо от его учетных данных.
Согласно журналам Heroku, ошибка находится где-то в строке 24, но я до сих пор не могу ее идентифицировать.
Спасибо, что уделили этому время.
Задача ещё не решена.
Других решений пока нет …