session fout
Ik heb hier 2 scripts die ik gebruikt.
Onder het kopje "account" op mijn website moet de gebruiken worden verzonden naar of het inlog scherm, of het account scherm. Dit ligt er natuurlijk aan of de gebruiker is ingelogd. Hier zijn mijn scripts:
Quote:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Wizzardz</title>
<link rel="stylesheet" type="text/css" href="WizzardzAccount.css">
</head>
</html>
<html>
<head>
<meta charset="utf-8">
<title>Wizzardz</title>
<link rel="stylesheet" type="text/css" href="WizzardzAccount.css">
</head>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?
if(isset($_POST["Nickname"]) && isset($_POST["Password"])){
require_once('WizzardzCheckuser.php');
$check=CheckUser($_POST["Nickname"],$_POST["Password"]);
if(!$check){
echo "wrong username or password" ;
}
}
if(isset($_SESSION["user"])){
echo "hier komt het gebruiker deel";
}
else{
echo '
Welcome! Before we can move you to the account panel, you must log in. Please enter your username and password below.
<br></br>
<form method="post" action="?page=WizzardzAccount2.php">
<table border="0" id="Table">
<tr>
<td>Nickname:</td>
<td><input type="text" name="Nickname" value=""></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="text" name="Password" value=""></td>
</tr>
<tr height="15"></tr>
<tr>
<td><a href="?page=WizzardzForgotpassword.php">Forgot password?</a></td>
<td><a href="?page=WizzardzAccountCreate.php">Create new account?</a></td>
</tr>
</table>
<input type="submit" id="LoginButton" value="Login">
</form>';
}
?>
if(isset($_POST["Nickname"]) && isset($_POST["Password"])){
require_once('WizzardzCheckuser.php');
$check=CheckUser($_POST["Nickname"],$_POST["Password"]);
if(!$check){
echo "wrong username or password" ;
}
}
if(isset($_SESSION["user"])){
echo "hier komt het gebruiker deel";
}
else{
echo '
Welcome! Before we can move you to the account panel, you must log in. Please enter your username and password below.
<br></br>
<form method="post" action="?page=WizzardzAccount2.php">
<table border="0" id="Table">
<tr>
<td>Nickname:</td>
<td><input type="text" name="Nickname" value=""></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="text" name="Password" value=""></td>
</tr>
<tr height="15"></tr>
<tr>
<td><a href="?page=WizzardzForgotpassword.php">Forgot password?</a></td>
<td><a href="?page=WizzardzAccountCreate.php">Create new account?</a></td>
</tr>
</table>
<input type="submit" id="LoginButton" value="Login">
</form>';
}
?>
</html>
--
Quote:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
return 1;
}
else {
return 0;
}
}
?>
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
return 1;
}
else {
return 0;
}
}
?>
Met deze scripts laat hij elke keer het deel zien waar hij al is ingelogd.
Iemand een idee?
Bedankt!
Gewijzigd op 09/02/2011 17:38:25 door Bram unknown
Toevoeging op 09/02/2011 17:38:10:
wat is je probleem?
Toevoeging op 09/02/2011 17:39:07:
Quote:
Met deze scripts laat hij elke keer het deel zien waar hij al is ingelogd.
Iemand een idee?
Iemand een idee?
nogmaals : Wat is je probleem, leg het eens goed uit / gebruik ook goed nederlands
Als de gebruiker niet is ingelogd, controleert het script de naam en logt hem vervolgens in.
Dit script verwijst elke keer naar optie 1. Hij denkt dus dat de gebruiker is ingelogd terwijl dit niet het geval is.
Ik zou kijken of de sessie bestaat . En dan een melding geven dat de sessie verlopen is. en dan de login weergeven
Stel er zit een vreemde achter je pc , die hoeft dan maar op submit te drukken
En ik snap nu pas wat je bedoelt met 2 topics. Dat was gewoon foutje van het internet. ;)
Alles wat je hebt aan php logica
( if(isset($_POST["Nickname"]) ... )
moet boven
<!DOCTYPE html ...
komen.
Als je daar in slaagt, kunnen we verder kijken naar je probleem.
en ik mis session_start(), en inderdaad zoals kris zegt eerst php en dan pas html (logica eerst, en dan pas de output)
Onnodig variabelen aanmaken
variabelen horen niet binnen de quotes
mysql_real_escape_string in een sessie? Heel vreemd
session_start mist zoals al gezegt
html niet valid
php boven html onder behalve doctype die moet helemaal bovenaan
* is een wildcard selecteer wat je wilt
Bouw fouthandeling in
volgens mij maakt dat niet zoveel uit of je die doctype nou helemaal boven aan zet, ik doe gewoon eerst php en daarna echo ik de doctype + <html> enzovoort, ik probeer juist altijd te beginnen met session start ;P
Doctype is ook output, dus die hoort bij de html en niet bovenin voor de php-headers.
Hey,
Op mijn website wil ik iemand laten inloggen. Hiervoor gebruik ik session_start().
Het eerste probleem is dat mijn website een kader bevat die waar een pagina binnen in wordt geladen.
De session_start is het eerste wat moet worden geladen van de pagina. En daarom staat deze daar voor aan:
Quote:
Code (php)
1
2
3
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Wizzardz</title>
<link rel="stylesheet" type="text/css" href="WizzardzMain.css">
</head>
<body>
<div id="Header">
<a href="?page=WizzardzArtwork.php"><img id="button1" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonArtwork.png" alt="Artwork"/></a>
<a href="http://wizzardz.actieforum.com/" target=_blank><img id="button2" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonForum.png" alt="Forum"/></a>
<a href="?page=WizzardzHome.php"><img id="button3" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonHome.png" alt="Home"/></a>
<a href="?page=WizzardzHelp.php"><img id="button4" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonHelp.png" alt="Help"/></a>
<a href="?page=WizzardzAccount2.php"><img id="button5" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonAccount.png" alt="Account"/></a>
</div>
<div id="Background">
<div id="Sidelist">
</div>
<div id="Main">
Code (php)
</div>
</div>
</body>
</html>
Als iemand op de Account knop klikt komt hij op een pagina.
Het eerste wat die pagina doet is kijken of de pagina een post mee krijgt met "username" en "password".
In dit geval, controleert de pagina of de naam en wachtwoord bestaan en bij elkaar horen.
Dit controleren gaat met de verwijzing: require_once('WizzardzCheckuser.php');.
Op dit script kom ik later nog terug.
Het tweede was de pagina doet is controleren of er een session "user" bestaat.
Als dit het geval is komt de gebruiker normaal op een gebruikers panel.
Op dit moment het ik dat gedeelte vervangen met: echo "hier komt het gebruiker deel";.
Als de session niet bestaat is er een echo waar de html code in staat voor inloggen.
Deze inlog verwijst weer naar dezelfde pagina.
Maar nu zit er wel een post en kan de pagina dus gaan inloggen.
Het deel van account checken werkt trouwens wel, hoewel er kleine foutjes in zitten als variabelen tussen haakjes.
Dit is de "account" pagina.
Quote:
Code (php)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
if(isset($_POST["Nickname"]) && isset($_POST["Password"])){
require_once('WizzardzCheckuser.php');
$check=CheckUser($_POST["Nickname"],$_POST["Password"]);
if(!$check){
echo "wrong username or password <br></br>" ;
}
}
//tot hier werkt het nog.
if(empty($_SESSION["user"])){
echo "hier komt het gebruiker deel";
}
else{
echo '
Welcome! Before we can move you to the account panel, you must log in. Please enter your username and password below.
<br></br>
<form method="post" action="?page=WizzardzAccount2.php">
<table border="0" id="Table">
<tr>
<td>Nickname:</td>
<td><input type="text" name="Nickname" value=""></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="text" name="Password" value=""></td>
</tr>
<tr height="15"></tr>
<tr>
<td><a href="?page=WizzardzForgotpassword.php">Forgot password?</a></td>
<td><a href="?page=WizzardzAccountCreate.php">Create new account?</a></td>
</tr>
</table>
<input type="submit" id="LoginButton" value="Login">
</form>';
}
?>
if(isset($_POST["Nickname"]) && isset($_POST["Password"])){
require_once('WizzardzCheckuser.php');
$check=CheckUser($_POST["Nickname"],$_POST["Password"]);
if(!$check){
echo "wrong username or password <br></br>" ;
}
}
//tot hier werkt het nog.
if(empty($_SESSION["user"])){
echo "hier komt het gebruiker deel";
}
else{
echo '
Welcome! Before we can move you to the account panel, you must log in. Please enter your username and password below.
<br></br>
<form method="post" action="?page=WizzardzAccount2.php">
<table border="0" id="Table">
<tr>
<td>Nickname:</td>
<td><input type="text" name="Nickname" value=""></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="text" name="Password" value=""></td>
</tr>
<tr height="15"></tr>
<tr>
<td><a href="?page=WizzardzForgotpassword.php">Forgot password?</a></td>
<td><a href="?page=WizzardzAccountCreate.php">Create new account?</a></td>
</tr>
</table>
<input type="submit" id="LoginButton" value="Login">
</form>';
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Wizzardz</title>
<link rel="stylesheet" type="text/css" href="WizzardzAccount.css">
</head>
</html>
En hier is het deel waar de naam en pass worden gechecked.
Quote:
Code (php)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
return 1;
}
else {
return 0;
}
}
?>
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
return 1;
}
else {
return 0;
}
}
?>
De fout die ik krijg, is dat de pagina altijd denkt dat er een session bestaat.
Ook als dit niet het geval is.
Als er nog vragen zijn zal ik deze zo spoedig mogelijk beantwoorden.
Ik hoop echt dat iemand weet wat de fout is.
Heel erg bedankt alvast!
Gewijzigd op 14/02/2011 15:32:43 door bram unknown
als je $_SESSION["user"] niet aanmaakt, bestaat hij niet en is hij dus altijd leeg. als je dan empty($_SESSION["user"])) doet zal hij altijd true terug geven.
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull" ;
}
Maar op een of andere manier werd dit niet gekopieerd
Toevoeging op 14/02/2011 16:05:12:
Oke ik kom er dus net achter dat mijn code gewoon helemaal niet gesaved was en dus wat ik net gekopieerd had niet klopt. Ik probeer het even te fixen
Ik heb de logincheck zo verandert nu:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull" ;
return 1;
}
else {
return 0;
}
}
?>
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull" ;
return 1;
}
else {
return 0;
}
}
?>
Toevoeging op 14/02/2011 16:10:46:
Ik was in de war gekomen omdat ik meerdere files had gemaakt omdat ik meerdere manieren had geprobeerd.
Ik heb de logincheck zo verandert nu:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull" ;
return 1;
}
else {
return 0;
}
}
?>
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull" ;
return 1;
}
else {
return 0;
}
}
?>
Toevoeging op 14/02/2011 16:12:01:
Oke nog even een ! voor de emty en hij werkt.
Heel erg bedankt voor je hulp want hierdoor zag ik de stomme fout!
^^
ik mis session_start(); op die pagina
De session_start staat helemaal voor op de pagina, zoals uitgelegd in mijn post hier boven.
Quote:
Het eerste probleem is dat mijn website een kader bevat die waar een pagina binnen in wordt geladen.
De session_start is het eerste wat moet worden geladen van de pagina. En daarom staat deze daar voor aan.
De session_start is het eerste wat moet worden geladen van de pagina. En daarom staat deze daar voor aan.
Toevoeging op 14/02/2011 16:23:30:
****************************************************************************************************************
En nu voor de laatste keer.
Hij doet het. Ik had een probleem met de session beeindigen.
Zet er please snel een slotje op. xD
Ik zou wel eens willen zien hoe/waar/wanneer je die functie aanroept,
Ik denk niet dat dit de meest praktische manier is, maar hier zijn mijn scripts voor je nog 1 keer op een rijtje:
WizzardzMain (ofwel het kader. Vaak index genoemt)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Wizzardz</title>
<link rel="stylesheet" type="text/css" href="WizzardzMain.css">
</head>
<body>
<div id="Header">
<a href="?page=WizzardzArtwork.php"><img id="button1" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonArtwork.png" alt="Artwork"/></a>
<a href="http://wizzardz.actieforum.com/" target=_blank><img id="button2" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonForum.png" alt="Forum"/></a>
<a href="?page=WizzardzHome.php"><img id="button3" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonHome.png" alt="Home"/></a>
<a href="?page=WizzardzHelp.php"><img id="button4" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonHelp.png" alt="Help"/></a>
<a href="?page=WizzardzAccount2.php"><img id="button5" src="http://dl.dropbox.com/u/2765884/wizzardz%20textures/ButtonAccount.png" alt="Account"/></a>
</div>
<div id="Background">
<div id="Sidelist">
</div>
<div id="Main">
</div>
</div>
</body>
</html>
De account pagina
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
if(isset($_POST["Nickname"]) && isset($_POST["Password"])){
require_once('WizzardzCheckuser.php');
$check=CheckUser($_POST["Nickname"],$_POST["Password"]);
if(!$check){
echo "wrong username or password <br></br>" ;
}
}
if(!empty($_SESSION["user"])){
echo 'This is the users panel.<br>
Here you can choose what you want to do with your account. <br></br>
<table border="0">
<tr>
<td><a href="?page=WizzardzLogout.php">Logout</a></td>
</tr>
</table>';
}
else{
echo '
Welcome! Before we can move you to the account panel, you must log in. Please enter your username and password below.
<br></br>
<form method="post" action="?page=WizzardzAccount2.php">
<table border="0" id="Table">
<tr>
<td>Nickname:</td>
<td><input type="text" name="Nickname" value=""></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="Password" value=""></td>
</tr>
<tr height="15"></tr>
<tr>
<td><a href="?page=WizzardzForgotpassword.php">Forgot password?</a></td>
<td><a href="?page=WizzardzAccountCreate.php">Create new account?</a></td>
</tr>
</table>
<input type="submit" id="LoginButton" value="Login">
</form>';
}
?>
if(isset($_POST["Nickname"]) && isset($_POST["Password"])){
require_once('WizzardzCheckuser.php');
$check=CheckUser($_POST["Nickname"],$_POST["Password"]);
if(!$check){
echo "wrong username or password <br></br>" ;
}
}
if(!empty($_SESSION["user"])){
echo 'This is the users panel.<br>
Here you can choose what you want to do with your account. <br></br>
<table border="0">
<tr>
<td><a href="?page=WizzardzLogout.php">Logout</a></td>
</tr>
</table>';
}
else{
echo '
Welcome! Before we can move you to the account panel, you must log in. Please enter your username and password below.
<br></br>
<form method="post" action="?page=WizzardzAccount2.php">
<table border="0" id="Table">
<tr>
<td>Nickname:</td>
<td><input type="text" name="Nickname" value=""></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="Password" value=""></td>
</tr>
<tr height="15"></tr>
<tr>
<td><a href="?page=WizzardzForgotpassword.php">Forgot password?</a></td>
<td><a href="?page=WizzardzAccountCreate.php">Create new account?</a></td>
</tr>
</table>
<input type="submit" id="LoginButton" value="Login">
</form>';
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Wizzardz</title>
<link rel="stylesheet" type="text/css" href="WizzardzAccount.css">
</head>
</html>
Accountcheck pagina
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull <br></br>" ;
return 1;
}
else {
return 0;
}
}
?>
function CheckUser($user,$pass){
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="wizzardz"; // Database name
$tbl_name="account"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password");
mysql_select_db("$db_name");
// To protect MySQL injection (more detail about MySQL injection)
$myusername = mysql_real_escape_string($user);
$mypassword = mysql_real_escape_string($pass);
$sql="SELECT * FROM $tbl_name WHERE Nickname='$myusername' and Password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION['user'] = $myusername;
//header("location:?page=WizzardzLoginWorked.php");
echo "Login succesfull <br></br>" ;
return 1;
}
else {
return 0;
}
}
?>