Error geven bij empty Username
ik ben helemaal nieuw in php en kom ergens niet uit.
ik heb een inlog schermpje gemaakt en wil dat hij op dezelfde pagina een error geeft als iemand geen username invult.
hoe pak ik dit aan ? alvast bedankt !
mijn code:
<body>
<form action='Homepage.php' method="post">
Username: <br /><input type='text' name="Username" /><br /><br />
Password: <br /><input type='password' name="Password" /><br /><br />
<input type='submit' value="Log in " /> or <a href="Register screen">Register</a> <br /> <br />
<a href="password forgot screen">Forgot your password ?</a> <br />
<a href="business partner screen">Want to be a business partner ?</a>
</form>
</body>
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
if ($_POST['Username'] == '') {
$error = 'U heeft uw gebruikersnaam niet ingevult.';
};
?>
if ($_POST['Username'] == '') {
$error = 'U heeft uw gebruikersnaam niet ingevult.';
};
?>
Dan kun je $error echo'en waar je wilt, bijvoorbeeld achter het veld username mits je php script en het inlog formulier op dezelfde pagina staan natuurlijk.
Gewijzigd op 18/10/2012 14:20:56 door Chris PHP
in mijn Hompage.php geeft hij nu een error op lijn 5 ( bij jou stukje dan ).
als ik nu op log in druk gaat hij naar homepage en zie ik niks
dus:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
if ($_POST['Username'] == '') {
$error = 'U heeft uw gebruikersnaam niet ingevult.';
}
?>
if ($_POST['Username'] == '') {
$error = 'U heeft uw gebruikersnaam niet ingevult.';
}
?>
if (isset($_POST['submit'])
{
if (isset($_POST['Username']))
{
echo "er is een username ingevuld";
} else {
echo "er is geen username";
}
}
Onderstaande is genoeg, de submit button hoef je niet te controleren in dit geval:
Code (php)
Gewijzigd op 18/10/2012 14:30:00 door Marvin H
Ja foutje van mij, sorry!
@Francoi
Het enige wat jou script nu doet is een echo geven dat de usernaam is ingevult, heeft natuurlijk weinig toegevoegde waarde tijdens een inlog script.
Daarom controleer je heer op een negatief, dus als hij leeg is echo je de tekst dat de gebruikernaam niet is ingevult (of declareren aan een variabel zodat je hem echo'd waar je wilt). Bij een positief resultaat dus een gevulde $_POST['Username'] gaat hij verder met het inlog script.
wel als je twee forms heb in de script dan zou het wel handig zijn
maar als ik nu dus niks invoer en op log in druk krijg ik dit in beeld: "; ?>
Toevoeging op 18/10/2012 14:36:28:
dat php moet op de pagina van Homepage.php toch ? of moet ik dat gewoon bij Inlogscherm.php zetten ?
Kun je je hompage.php eens posten (mits niet te veel regels ;))
Toevoeging op 18/10/2012 14:37:30:
offtopic:
@Chris, we zijn wel eensgezind vandaag haha
Offtopic:
@Marvin
Haha, ja dat kun je wel stellen ja ;)
Gewijzigd op 18/10/2012 14:38:26 door Chris PHP
in zijn copy paste vakje?
Tom bijlsma op 18/10/2012 14:38:26:
hoe doe ik dat zo mooi als jullie :P ?
in zijn copy paste vakje?
in zijn copy paste vakje?
Tussen code tags zetten [code.] script hier [/code.] Maar dan zonder de . erachter.
Toevoeging op 18/10/2012 14:40:50:
Dit is mijn Inlogscherm.php waar moet ik hier nu die controle van Username tussen zetten ?
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
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Log in screen</title>
</head>
<body>
<form action='Homepage.php' method="post">
Username: <br /><input type='text' name="Username" /> <br /><br />
Password: <br /><input type='password' name="Password" /><br /><br />
<input type='submit' name='submit' value="Log in " /> or <a href="Register screen">Register</a> <br /> <br />
<a href="password forgot screen">Forgot your password ?</a> <br />
<a href="business partner screen">Want to be a business partner ?</a>
</form>
</body>
</html>
Gewijzigd op 18/10/2012 14:42:11 door Chris PHP
nou die submit Log in gaat dus naar de Homepage.php ( daar moet je heen als je ingelogd bent)
maar hij gaat hoe dan ook naar homepage.php of ik nou niks invul of wel wat invul.
Alles wat ik net poste staat in inlogscherm.php dus zal dat redirecten niet hebben ?
je form action is ingesteld op homepage.php dus denk daar moet je controleren
Francoi gckx op 18/10/2012 14:47:35:
je form action is ingesteld op homepage.php dus denk daar moet je controleren
kan ik hem dan niet gewoon op inlogscherm.php zetten ?
Gewijzigd op 18/10/2012 14:57:34 door Francoi gckx
Je mag je action leeglaten, je mag er ook "inlogscherm.php" neerzetten of
Let wel dat je dan het script aanpast, zodat hij na succes doorverwijst naar je Homepage.php doormiddel van
header ("Location: Homepage.php"); aan het einde van je controlescript te zetten.
Gewijzigd op 18/10/2012 15:08:16 door Chris PHP