Hallo mensen,
ik ben voor de grap even met PHP aan het prutsen en probeer een basi (zonder DB) een login scriptje te maken. alleen de $_POST blijft me maar 0 posten.
start_session() wordt al op de index.php pagina aangeroepen.
het script moet de data naar de pagina zelf zenden staat hieronder:
Wie kan er zien wat ik fout doe.
Alvast bedankt!
JV.com
<?php
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$gebruikersnaam = $_POST["gebruikersnaam"];
$wachtwoord = $_POST["wachtwoord"];
if(!empty($gebruikersnaam) && !empty($wachtwoord))
{
if($gebruikersnaam == "jelte" && $wachtwoord == "test")
{
$_SESSION["ingelogd"] = 1;
}
else
{
$_SESSION["ingelogd"] = 2;
}
}
else
{
$_SESSION["ingelogd"] = 3;
}
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
Inloggen
</title>
<link href="../styles/style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="header">
<div class="headertext">
Jelte Verbree: C#,C++,Linux and more..
</div>
<div class="menu">
<div class="menuitem">
<a href="../index.php" alt="Home" class="menulink">Home</a>
</div>
<div class="menuitem">
<a href="nieuws.php" alt="Nieuws" class="menulink">Nieuws</a>
</div>
<div class="menuitem">
<a href="login.php" alt="Inloggen" class="menulink">Inloggen</a>
</div>
</div>
</div>
<div class="maincontent">
<h2> Inloggen:</h2>
<div class="errormessage">
<?php
if($_SESSION["ingelogd"] != 0)
{
if($_SESSION["ingelogd"] == 1)
{
echo "u bent ingelogd!";
}
elseif($_SESSION["ingelogd"] == 2)
{
echo "onjuiste wachtwoord en/of gebruikersnaam";
}
elseif($_SESSION["ingelogd"] == 3)
{
echo "geen wachtwoord en/of gebruikersnaam";
}
}
?>
</div>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table>
<tr>
<td>Gebruikersnaam:</td><td><input type="text" name="gebruikersnaam" value="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td><td><input type="password" name="wachtwoord" value="wachtwoord"></td>
</tr>
<tr>
<td>
<input type="submit" value="inloggen">
</td>
</tr>
</table>
</form>
</div >
<div class="footer">
</div>
</body>
</html>
EDIT OPLOSSING:
volgens mij lag het aan het feit dat ik de seesion op true en false zette + dat ik een 0 gebruikte. deze waardes zijn niet te volgens mij niet goed te combineren in dit script. ik heb nu alleen de waarden 1,2,3,0 gebruikt.
als ik op de index.php kom zet ik de sessie op 0.
als ik een inlog actie doe kan er alleen maar 1,2,3 uitkomen.
1 = alles goed.
2 = ingevulde gegevens onjuist.
3 = er missen een of meerdere gegevens.
zie hier mij code:
<?php
if($_SERVER['REQUEST_METHOD'] == "POST")
{
echo "gebruikersnaam:" + $_POST["gebruikersnaam"] + "<br>";
echo "wachtwoord:" + $_POST["wachtwoord"] + "<br>";
if(!empty($_POST["gebruikersnaam"]) && !empty($_POST["wachtwoord"]))
{
if($_POST["gebruikersnaam"] == "piet" && $_POST["wachtwoord"] == "test")
{
echo "juist";
$_SESSION["ingelogd"] = true;
}
else
{
echo "niet juist";
$_SESSION["ingelogd"] = false;
}
}
else
{
echo "leeg";
$_SESSION["ingelogd"] = -1;
}
}
else
{
$_SESSION["ingelogd"] = NULL;
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
Inloggen
</title>
<link href="../styles/style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="header">
<div class="headertext">
C#,C++,Linux and more..
</div>
<div class="menu">
<div class="menuitem">
<a href="../index.php" alt="Home" class="menulink">Home</a>
</div>
<div class="menuitem">
<a href="nieuws.php" alt="Nieuws" class="menulink">Nieuws</a>
</div>
<div class="menuitem">
<a href="login.php" alt="Inloggen" class="menulink">Inloggen</a>
</div>
</div>
</div>
<div class="maincontent">
<h2> Inloggen:</h2>
<div class="errormessage">
<?php
if($_SESSION["ingelogd"] != NULL)
{
if($_SESSION["ingelogd"] == false)
{
echo "Uw gebruikersnaam en/of wachtwoord is onjuist!";
}
else if($_SESSION["ingelogd"] == -1)
{
echo "U heeft geen gebruikersnaam en/of wachtwoord ingevoerd";
}
else if($_SESSION["ingelogd"] == true)
{
echo "u bent succesvol ingelogd";
}
}
?>
</div>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table>
<tr>
<td>Gebruikersnaam:</td><td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord:</td><td><input type="password" name="wachtwoord"></td>
</tr>
<tr>
<td>
<input type="submit" value="inloggen">
</td>
</tr>
</table>
</form>
</div >
<div class="footer">
</div>
</body>
</html>
nu werkt het!
bedankt voor jullie hulp!