Login
ik weet het, ik heb veel vragen, maarja, ik wil echt php leren,
en kom veel problemen tegen, meestal vind ik ze op internet, maar nu lukt het me echt niet :s
het gaat om deze pagina
Je kan proberen in te logen met de naam test, en het wachtwoord test
http://www.crime-world.nl/betatestspel/login.php
Als ik inlog, krijg ik een witte pagina, en als ik bron weergeven doen, lukt dat niet, dus ik denk dat die pagina gewoon een soort van gecrasht is, kan iemand mij helpen?
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php
session_start();
error_reporting(E_ALL);
include("includes/config.inc.php");
if(!isset($_SESSION['session_id'])) {
if($_SERVER['REQUEST_METHOD'] == "POST"){
$gebruikernaam = mysql_real_escape_string($_POST['gebruikersnaam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
$ip = $_SERVER['REMOTE_ADDR'];
srand ((double) microtime( )*1000000);
$session_id = rand(1000,1000000);
$login = "SELECT ID, gebruikersnaam FROM gebruikers WHERE gebruikersnaam = '".$gebruikersnaam."' AND wachtwoord = '".$wachtwoord."'";
if(mysql_num_rows($login) !== 0){
while($row = mysql_fetch_array($login)){
$_SESSION['gebruikersnaam'] = $row['gebruikersnaam'];
$_SESSION['ID'] = $row['ID'];
$_SESSION['IP'] = $ip;
$_SESSION['session_id'] = $session_id;
echo "Je bent nu ingelogd!";
}
} else {
echo "De door jou ingevoerde combinatie is fout!";
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
Je bent al ingelogd! klik <a href="index.php">hier</a> om terug naar de beginpagina te gaan!.
</body>
</html>
<?php
}
?>
[/CODE]
session_start();
error_reporting(E_ALL);
include("includes/config.inc.php");
if(!isset($_SESSION['session_id'])) {
if($_SERVER['REQUEST_METHOD'] == "POST"){
$gebruikernaam = mysql_real_escape_string($_POST['gebruikersnaam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
$ip = $_SERVER['REMOTE_ADDR'];
srand ((double) microtime( )*1000000);
$session_id = rand(1000,1000000);
$login = "SELECT ID, gebruikersnaam FROM gebruikers WHERE gebruikersnaam = '".$gebruikersnaam."' AND wachtwoord = '".$wachtwoord."'";
if(mysql_num_rows($login) !== 0){
while($row = mysql_fetch_array($login)){
$_SESSION['gebruikersnaam'] = $row['gebruikersnaam'];
$_SESSION['ID'] = $row['ID'];
$_SESSION['IP'] = $ip;
$_SESSION['session_id'] = $session_id;
echo "Je bent nu ingelogd!";
}
} else {
echo "De door jou ingevoerde combinatie is fout!";
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
Je bent al ingelogd! klik <a href="index.php">hier</a> om terug naar de beginpagina te gaan!.
</body>
</html>
<?php
}
?>
[/CODE]
Gewijzigd op 29/07/2011 23:49:27 door Stefan iemand
waarschijnlijk vind hij dat de gebruikersnaam en wachtwoord niet overeen komen, want dan output je niks.
Anyway, zet je code even tussen [code] een [/code] tags. Dat maakt de boel beter leesbaarder. Relevante code tonen maakt het nog plezierig leesbaarder.
Ook voer je de query niet uit met mysql_query().
Gewijzigd op 29/07/2011 23:49:32 door - Ariën -
Waarom maak jij 3x een topic aan over hetzelfde onderwerp? Daar wil ik graag een verklaring voor hebben.
Toevoeging op 29/07/2011 23:50:30:
ik heb maar 1x aangemaakt hoor :s
Toevoeging op 29/07/2011 23:50:59:
Geen idee hoe dit gebeurt is
Je maakt 3x per ongeluk hetzelfde topic aan? Leg uit... ik ben erg benieuwd.
Victor - op 29/07/2011 23:40:55:
waarschijnlijk vind hij dat de gebruikersnaam en wachtwoord niet overeen komen, want dan output je niks.
} else {
echo "De door jou ingevoerde combinatie is fout!";
?>
er is wel een output
Toevoeging op 29/07/2011 23:52:40:
Ozzie PHP op 29/07/2011 23:51:08:
Je maakt 3x per ongeluk hetzelfde topic aan? Leg uit... ik ben erg benieuwd.
ik heb het maar 1x aangemaakt, ik heb echt geen idee hoe dit gebeurt is :s
In verschillende forums? Ik geloof het niet, maar aan een mod/admin de job om ze te sluiten en dit verder af te handelen.
Toevoeging op 29/07/2011 23:53:53:
kijk dan naar de tijden, denk je dat ik op 1 seconde, naar die pagina kan gaan, opnieuw posten?
Toevoeging op 29/07/2011 23:55:09:
volgens mij is mijn pc aan het flippen :s
Back on topic.
- Aar - op 29/07/2011 23:47:27:
Ben je nou echt zo wanhopig dat je maar gaat cross-posten?
Anyway, zet je code even tussen [code] een [/code] tags. Dat maakt de boel beter leesbaarder. Relevante code tonen maakt het nog plezierig leesbaarder.
Ook voer je de query niet uit met mysql_query().
Anyway, zet je code even tussen [code] een [/code] tags. Dat maakt de boel beter leesbaarder. Relevante code tonen maakt het nog plezierig leesbaarder.
Ook voer je de query niet uit met mysql_query().
Ik was inderdaad vergeten de query uit te voeren, dat is nu gelukt, dus de pagina werkt, maar nu meld die de hele tijd dat de combinatie fout is, terwijl ik zeker weet dat het juist is
Gewijzigd op 30/07/2011 00:17:40 door Stefan iemand
Stefan iemand op 29/07/2011 23:52:16:
} else {
echo "De door jou ingevoerde combinatie is fout!";
?>
er is wel een output
Toevoeging op 29/07/2011 23:52:40:
ik heb het maar 1x aangemaakt, ik heb echt geen idee hoe dit gebeurt is :s
Victor - op 29/07/2011 23:40:55:
waarschijnlijk vind hij dat de gebruikersnaam en wachtwoord niet overeen komen, want dan output je niks.
} else {
echo "De door jou ingevoerde combinatie is fout!";
?>
er is wel een output
Toevoeging op 29/07/2011 23:52:40:
Ozzie PHP op 29/07/2011 23:51:08:
Je maakt 3x per ongeluk hetzelfde topic aan? Leg uit... ik ben erg benieuwd.
ik heb het maar 1x aangemaakt, ik heb echt geen idee hoe dit gebeurt is :s
Oeps verkeerd gekeken
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php
session_start();
error_reporting(E_ALL);
include("includes/config.inc.php");
if(!isset($_SESSION['session_id'])) {
if($_SERVER['REQUEST_METHOD'] == "POST"){
$gebruikernaam = mysql_real_escape_string($_POST['gebruikersnaam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
$ip = $_SERVER['REMOTE_ADDR'];
srand ((double) microtime( )*1000000);
$session_id = rand(1000,1000000);
$login = "SELECT ID, gebruikersnaam FROM gebruikers WHERE gebruikersnaam = '".$gebruikersnaam."' AND wachtwoord = '".$wachtwoord."'";
$dologin = mysql_query($login);
if(mysql_num_rows($dologin) == 1){
while($row = mysql_fetch_array($login)){
$_SESSION['gebruikersnaam'] = $row['gebruikersnaam'];
$_SESSION['ID'] = $row['ID'];
$_SESSION['IP'] = $ip;
$_SESSION['session_id'] = $session_id;
echo "Je bent nu ingelogd!";
}
} else {
echo "De door jou ingevoerde combinatie is fout!<br>";
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
Je bent al ingelogd! klik <a href="index.php">hier</a> om terug naar de beginpagina te gaan!.
</body>
</html>
<?php
}
?>
session_start();
error_reporting(E_ALL);
include("includes/config.inc.php");
if(!isset($_SESSION['session_id'])) {
if($_SERVER['REQUEST_METHOD'] == "POST"){
$gebruikernaam = mysql_real_escape_string($_POST['gebruikersnaam']);
$wachtwoord = mysql_real_escape_string(md5($_POST['wachtwoord']));
$ip = $_SERVER['REMOTE_ADDR'];
srand ((double) microtime( )*1000000);
$session_id = rand(1000,1000000);
$login = "SELECT ID, gebruikersnaam FROM gebruikers WHERE gebruikersnaam = '".$gebruikersnaam."' AND wachtwoord = '".$wachtwoord."'";
$dologin = mysql_query($login);
if(mysql_num_rows($dologin) == 1){
while($row = mysql_fetch_array($login)){
$_SESSION['gebruikersnaam'] = $row['gebruikersnaam'];
$_SESSION['ID'] = $row['ID'];
$_SESSION['IP'] = $ip;
$_SESSION['session_id'] = $session_id;
echo "Je bent nu ingelogd!";
}
} else {
echo "De door jou ingevoerde combinatie is fout!<br>";
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
<form method="post" action="login.php">
<table>
<tr>
<td>Gebruikersnaam:</td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td>
<td><input type="password" name="wachtwoord">
</tr>
<tr>
<td></td>
<td><input type="submit" name="submit" value="Login"></td>
</tr>
</table>
</form>
</body>
</html>
<?php
}
} else {
?>
<html>
<header>
<title><?php echo $spelnaam; ?></title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</header>
<body>
Je bent al ingelogd! klik <a href="index.php">hier</a> om terug naar de beginpagina te gaan!.
</body>
</html>
<?php
}
?>
Gewijzigd op 30/07/2011 00:18:30 door Stefan iemand
Wat gaat er nu fout. Je voert 'test' en 'test' in en je logt niet in? Is dat het probleem?
Ozzie PHP op 30/07/2011 00:40:23:
Wat gaat er nu fout. Je voert 'test' en 'test' in en je logt niet in? Is dat het probleem?
Ja dat is het probleem,
hij zegt steeds foute combinatie, maar het is wel juist!
Heb je uberhaubt we database connectie?
dus iets van:
Even quick en dirty om een foutmelding boven water te krijgen:
Tevens maak je onnodige variabelen aan. De gebruikersnaam en wachtwoord gebruik je om in je database te zoeken, maar daarvoor hoef je ze niet eerst in een variabele te stoppen.
Je strings in je echo horen tussen enkele '' quotations te staan en niet dubbele.
Volgens een tutorial die ik gevolgd heb is REMOTE_ADRR een zwakke manier om een ip te achterhalen, omdat je het eerste ip pakt dat je tegenkomt. Mensen kunnen ook met meerdere gebruikers op de zelfde router zitten en dan wil je wat verder doorzoeken.
En om een beetje on topic door te gaan. Wat is uberhaupt het probleem? Welke errors krijg je? Tot welke block kom je? etc. Het is moeilijk helpen zo. De laatste posts is dan ook alleen maar giswerk.
Ja ik heb een mysql verbinding, en de gegevens kloppen, daarom dat ik het raar vind dat het niet werkt
moet zijn:
Edit:
ik heb even de vrijheid genomen om je code wat (na mijn mening) overzichterlijker te maken. Moet je maar ff kijke wat je er mee gaat doen:
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
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
<?php
$gebruikernaam = mysql_real_escape_string ($_POST['gebruikersnaam']);
$wachtwoord = mysql_real_escape_string (md5 ($_POST['wachtwoord']));
$ip = $_SERVER['REMOTE_ADDR'];
srand ((double) microtime() * 1000000);
$session_id = rand (1000,1000000);
$login = "SELECT ID,gebruikersnaam FROM gebruikers WHERE gebruikersnaam = '" . $gebruikersnaam . "' AND wachtwoord = '" . $wachtwoord . "'";
$dologin = mysql_query ($login);
if (!$dologin)
{
echo "[MySQL] Er is wat fout gegaan bij het inloggen.<br /><br />";
echo mysql_error ();
exit;
}
if (mysql_num_rows ($dologin) == 1)
{
$row = mysql_fetch_assoc ($dologin);
$_SESSION['gebruikersnaam'] = $row['gebruikersnaam'];
$_SESSION['ID'] = $row['ID'];
$_SESSION['IP'] = $ip;
$_SESSION['session_id'] = $session_id;
echo "Je bent nu ingelogd!";
}
else
{
// niet ingelogt..
?>
$gebruikernaam = mysql_real_escape_string ($_POST['gebruikersnaam']);
$wachtwoord = mysql_real_escape_string (md5 ($_POST['wachtwoord']));
$ip = $_SERVER['REMOTE_ADDR'];
srand ((double) microtime() * 1000000);
$session_id = rand (1000,1000000);
$login = "SELECT ID,gebruikersnaam FROM gebruikers WHERE gebruikersnaam = '" . $gebruikersnaam . "' AND wachtwoord = '" . $wachtwoord . "'";
$dologin = mysql_query ($login);
if (!$dologin)
{
echo "[MySQL] Er is wat fout gegaan bij het inloggen.<br /><br />";
echo mysql_error ();
exit;
}
if (mysql_num_rows ($dologin) == 1)
{
$row = mysql_fetch_assoc ($dologin);
$_SESSION['gebruikersnaam'] = $row['gebruikersnaam'];
$_SESSION['ID'] = $row['ID'];
$_SESSION['IP'] = $ip;
$_SESSION['session_id'] = $session_id;
echo "Je bent nu ingelogd!";
}
else
{
// niet ingelogt..
?>
Gewijzigd op 30/07/2011 13:17:24 door Cake Masher
Het werkt, bedankt
Hoe groot is het wachtwoord-veld in de database?