Хорошо, поэтому я хочу сделать простую страницу входа. Я создал страницу регистрации успешно, но я не могу получить регистрационную информацию.
<?php session_start(); include("mainmenu.php"); $usrname = mysql_real_escape_string($_POST['usrname']); $password = md5($_POST['password']); $con = mysql_connect("localhost", "root", "g00dfor@boy"); if(!$con){ die(mysql_error()); } mysql_select_db("users", $con) or die(mysql_error()); $login = "SELECT * FROM `users` WHERE (usrname = '$usrname' AND password = '$password')"; $result = mysql_query($login); if(mysql_num_rows($result) == 1 { $_SESSION = true; header('Location: indexlogin.php'); } else { echo = "Wrong username or password." ; } ?>
indexlogin.php просто перекликается с «Войти успешно». Что я делаю не так? О, и только FYI- моя база данных – это «пользователи», а моя таблица – «данные».
<?php session_start(); include("mainmenu.php"); $usrname = mysql_real_escape_string($_POST['usrname']); $password = md5($_POST['password']); $con = mysql_connect("localhost", "root", "g00dfor@boy"); if (!$con) { die(mysql_error()); } mysql_select_db("users", $con) or die(mysql_error()); $login = "SELECT * FROM `users` WHERE (usrname = '$usrname' AND password = '$password')"; $result = mysql_query($login); if (mysql_num_rows($result) == 1) { $_SESSION['logged_in'] = true; header('Location: indexlogin.php'); exit; } else { echo "Wrong username or password."; } ?>
в<?php session_start(); include("mainmenu.php"); $usrname = mysql_real_escape_string($_POST['usrname']); $password = md5($_POST['password']); $con = mysql_connect("localhost", "root", "g00dfor@boy"); if (!$con) { die(mysql_error()); } mysql_select_db("users", $con) or die(mysql_error()); $login = "SELECT * FROM `users` WHERE (usrname = '$usrname' AND password = '$password')"; $result = mysql_query($login); if (mysql_num_rows($result) == 1) { $_SESSION['logged_in'] = true; header('Location: indexlogin.php'); exit; } else { echo "Wrong username or password."; } ?>
mysql_real_escape_string()
чтобы предотвратить SQL- инъекцию .$_SESSION = true;
(что не имеет смысла) в $_SESSION['logged_in'] = true;
, Затем в indexlogin.php
вы можете сделать что-то вроде if ($_SESSION['logged_in']) { echo $secret; }
if ($_SESSION['logged_in']) { echo $secret; }
echo = "Wrong username or password.";
echo "Wrong username or password.";
mysql_num_rows($result) == 1
. Ты сказал:
моя база данных – это «пользователи», а моя таблица – «данные».
Если это правильно, вам нужно будет изменить SELECT * FROM users
на данные SELECT * FROM data
.
Я не думаю, что вы можете установить $ _SESSION = true, потому что $ _SESSION – это массив. Попробуйте $ _SESSION ['logged_in'] = true.