目前正在进行登录和仪表板等,但在登录页面上遇到这两个错误: 注意:未定义的索引:第3行的C:\ xampp \ htdocs \ login.php中的id 注意:未定义的索引:第128行的C:\ xampp \ htdocs \ login.php中的id
我的login.php:
<?php
session_start();
$_SESSION['id'];
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$IP = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$IP = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$IP = $_SERVER['REMOTE_ADDR'];
}
function Register()
{
$con = mysqli_connect("localhost","root","","gtaauth");
if(!empty($_POST['Key']) AND !empty($_POST['Username'])) //checking the 'user' name which is from Sign-In.php, is it empty or have some text
{
$errors="";
$query="SELECT `Key` FROM `Keys` WHERE `Key`= '".mysqli_real_escape_string($con,$_POST['Key'])."'";
$result = mysqli_query($con,$query);
$row = mysqli_fetch_array($result);
if($row['Key'])
{
$query="SELECT `Activated` FROM `Keys` WHERE `Key`= '".mysqli_real_escape_string($con,$_POST['Key'])."'";
$result = mysqli_query($con,$query);
$row = mysqli_fetch_array($result);
if($row['Activated']){
$errors= "This key has already been activated. You cannot create an account with this key.";
}
}
else{
$errors= "Key not found. Please contact us for assistance!";
}
if($errors){
echo $errors;
}else{
//ip insert update
$query="UPDATE `Keys` SET `IP` = '$IP', `Activated` = '1', `Username` = '".mysqli_real_escape_string($con,$_POST['Username'])."' WHERE `Key`= '".mysqli_real_escape_string($con,$_POST['Key'])."'";
$result = mysqli_query($con,$query);
if($result){
$query="UPDATE `Keys` SET `Timestamp` = NOW(), `IP` = '$IP', `DATE` = NOW() WHERE `Keys`= '".mysqli_real_escape_string($con,$_POST['Key'])."'";
$result=mysqli_query($con,$query);
}else{
$errors.="Could not sign up. Please contact us for assistance.";
}
//email check
$query = "SELECT*FROM `Users` WHERE email='".mysqli_real_escape_string($con,$_POST['Email'])."'";
$result = mysqli_query($con,$query);
$results = mysqli_num_rows($result);
if($results>0){
$errors.="The email provided is already registered. </br>";
}
//username check
$query = "SELECT*FROM `Users` WHERE username='".mysqli_real_escape_string($con,$_POST['Username'])."'";
$result = mysqli_query($con,$query);
$results = mysqli_num_rows($result);
if($results>0){
$errors.= "The username provided is already registered. </nr>";
}
if($errors){
echo $errors;
}else{
$query = "INSERT INTO `Users` (`username`,`name`,`email`, `password`) VALUES ('".mysqli_real_escape_string($con, $_POST['Username'])."','".mysqli_real_escape_string($con, $_POST['Name'])."','".mysqli_real_escape_string($con, $_POST['Email'])."', '".md5(md5($_POST['Email']).$_POST['password'])."')";
$result = mysqli_query($con,$query);
if($result){
echo '<script type="text/javascript"> window.onload = function () { alert("Registration and activation was successful."); } </script>';
}else{
echo '<script type="text/javascript"> window.onload = function () { alert("An error occurred. Please contact us for assistance."); } </script>';
// echo"Error Please contact me or jelly (skype: mathiis95)";
}
}
}
}
}
function SignIn(){
$con = mysqli_connect("localhost","root","","gtaauth");
$query = "SELECT `email` FROM `Users` WHERE `username`='".mysqli_real_escape_string($con,$_POST['Username'])."'";
$result=mysqli_query($con,$query);
$row = mysqli_fetch_array($result);
if($row['email']){
$query = "SELECT * FROM `Users` WHERE `username`= '".mysqli_real_escape_string($con,$_POST['Username'])."' AND `password`= '".md5(md5($row['email']).$_POST['password'])."'";
$result=mysqli_query($con,$query);
$row = mysqli_fetch_array($result);
$query1 = "SELECT * FROM `Keys` WHERE `Username`= '".mysqli_real_escape_string($con,$_POST['Username'])."'";
$result1=mysqli_query($con,$query1);
$row1 = mysqli_fetch_array($result1);
if($row){
if(!empty($row['password']) AND !empty($row['username']))
{
$_SESSION['id'] = $row['id'];
$_SESSION['isstaff']=$row['isStaff'];
$_SESSION['username']=$row['username'];
$_SESSION['email']=$row['email'];
$_SESSION['key']=$row1['Key'];
$_SESSION['date']=$row1['DATE'];
$_SESSION['ip']=$row1['IP'];
header("Location: dashboard.php");
}else{
echo '<script type="text/javascript"> window.onload = function () { alert("Incorrect email or password."); } </script>';
//echo "Incorrect Email Or Password";
}
}
}
}
if(isset($_POST['licence']))
{
Register();
}
if(isset($_POST['sign']))
{
SignIn();
}
if($_SESSION['id']){
$isLogin = 1;
}else{
$isLogin=0;
}
?>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="We are a development team based around the Playstation 3, providing you with a range of things from SPRX menus to a future RTM tools!">
<meta name="author" content="Independence Staff">
<title>Independence | Login & Register</title>
<link rel="shortcut icon" href="assets/images/gt_favicon.png">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway:200,400,600|Open+Sans:300,400,700">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
<!-- Custom styles for our template -->
<link rel="stylesheet" href="assets/css/styles.css">
<!-- jQuery -->
<script src="assets/js/jquery.js" type="text/javascript"></script>
<script src="assets/js/jquery.maskedinput.js" type="text/javascript"></script>
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="assets/js/html5shiv.js"></script>
<script src="assets/js/respond.min.js"></script>
<![endif]-->
</head>
<body class="page-signin">
<section class="section section-signin">
<p class="text-center"><a href="#"><img src="assets/images/logo.png" alt="Independence Sprx"></a></p>
<div class="panel panel-default">
<div class="panel-body" role="tabpanel">
<!-- forms container -->
<div class="tab-content">
<!-- login -->
<div role="tabpanel" class="tab-pane active" id="do-login">
<h3 class="text-center">Login</h3>
<p class="text-center">
<br>
Please use the form below to login to your account.
<br>
</p>
<form method="post">
<div class="form-group">
<input type="text" class="form-control" name="Username" placeholder="Username">
</div>
<div class="form-group">
<input type="password" class="form-control" name="password" placeholder="Password">
</div>
<div class="form-group">
<button class="btn btn-block btn-action" name="sign" type="submit">Login</button>
</div>
</form>
</div>
<!-- end of login -->
<!-- register -->
<div role="tabpanel" class="tab-pane" id="do-register">
<h3 class="text-center">License Registration</h3>
<p class="text-center">
<br>
Register and Activate your License Key.
<br>
</p>
<form method="post">
<div class="form-group">
<input type="text" class="form-control" name="Name" placeholder="Your Name">
</div>
<div class="form-group">
<input type="text" class="form-control" name="Username" placeholder="Username">
</div>
<div class="form-group">
<input type="password" class="form-control" name="password" placeholder="Password">
</div>
<div class="form-group">
<input type="email" class="form-control" name="Email" placeholder="Email">
</div>
<div class="form-group">
<input id="key" type="text" class="form-control" name="Key" placeholder="XXXX-XXXX-XXXX" />
<script>jQuery(function($){$("#key").mask("****-****-****",{placeholder:"XXXX-XXXX-XXXX"});});</script>
</div>
<div class="form-group">
<button class="btn btn-block btn-action" name="licence" type="submit">Register License</button>
</div>
</form>
</div>
<!-- end of register -->
<!-- forgot password -->
<div role="tabpanel" class="tab-pane" id="do-forgotpass">
<h3 class="text-center">Reset password</h3>
<p class="text-center">
<br>
A confirmation link will be sent to your email.
<br>
</p>
<form method="post">
<div class="form-group">
<input type="email" class="form-control" name="email" placeholder="Email">
</div>
<div class="form-group">
<button class="btn btn-block btn-action" type="submit">Reset password</button>
</div>
</form>
</div>
<!-- end of forgot password -->
</div>
<!-- end of forms container -->
<!-- the switch between forms -->
<ul class="toggler text-center small list-unstyled" role="tablist">
<li role="presentation" class="active">Changed your mind? <a href="#do-login" aria-controls="do-login" role="tab" data-toggle="tab">Back to login form</a></li>
<li role="presentation">Have a license key? <a href="#do-register" aria-controls="do-register" role="tab" data-toggle="tab">Activate it now</a></li>
<li role="presentation"><a href="#do-forgotpass" aria-controls="do-forgotpass" role="tab" data-toggle="tab">Forgot password?</a></li>
</ul>
</div>
</div>
<!-- /panel -->
</section>
<!-- Faster loading -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</body>
</html>
答案 0 :(得分:0)
$_SESSION['id'];
没有描述,你应该检查例如isset($_SESSION['id'])
而不是流。
答案 1 :(得分:0)
您已启动会话,因此您肯定会获得会话ID 试试
requestPermissions()