Error echo array
Hi,
Ik probeer een loginsysteem te maken maar de bedoeling is dat alle errors die komen zichtbaar zijn
[qoute]
[/qoute]
Moet dan de username empty error te laten zien & password wanneer beide velden leeg zijn
Ik probeer een loginsysteem te maken maar de bedoeling is dat alle errors die komen zichtbaar zijn
[qoute]
Code (php)
[/qoute]
Moet dan de username empty error te laten zien & password wanneer beide velden leeg zijn
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Gewijzigd op 09/04/2015 15:10:51 door Rick B
Wanneer ik gebruik maak van dit form werkt het niet ;s
[qoute]
<form method="POST" action="./login.php">
<input type="text" placeholder="Gebruikersnaam" name="username" /><br />
<input type="password" placeholder="Wachtwoord" name="password" /><br />
<input type="submit" value="Submit" />
</form>
[/qoute]
[qoute]
<form method="POST" action="./login.php">
<input type="text" placeholder="Gebruikersnaam" name="username" /><br />
<input type="password" placeholder="Wachtwoord" name="password" /><br />
<input type="submit" value="Submit" />
</form>
[/qoute]
Gebruik a.u.b. de code-tag voor scripts.
Controleer ook eerst of je het formulier hebt verstuurd:
Verder controleer ik of iets niet ingevuld is met:
Dan strip je ook enkele spaties alleen.
Controleer ook eerst of je het formulier hebt verstuurd:
Verder controleer ik of iets niet ingevuld is met:
Dan strip je ook enkele spaties alleen.
Aangepast naar aar dr script.
Wanneer ik nu bijv het input veld username invult krijg ik alleen de error dat username leeg is terwijl die wel gevuld is en password niet,
script
Wanneer ik nu bijv het input veld username invult krijg ik alleen de error dat username leeg is terwijl die wel gevuld is en password niet,
script
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$errors = array();
if (trim($_POST["username"])) {
$errors[] = "Vul wel een gebruikersnaam in";
}
if (trim($_POST["password"])) {
$errors[] = "Vul wel een wachtwoord in";
}
if (!empty($errors)) {
foreach($errors as $error) {
echo $error."<br>";
}
die();
} else {
echo "Rest van de code.";
}
} else {
echo "Geen formulier verstuurd.";
}
?>
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$errors = array();
if (trim($_POST["username"])) {
$errors[] = "Vul wel een gebruikersnaam in";
}
if (trim($_POST["password"])) {
$errors[] = "Vul wel een wachtwoord in";
}
if (!empty($errors)) {
foreach($errors as $error) {
echo $error."<br>";
}
die();
} else {
echo "Rest van de code.";
}
} else {
echo "Geen formulier verstuurd.";
}
?>
- Aar -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 09/04/2015 15:36:30 door - Ariën -
Je moet niet alleen trim() doen, maar ook vergelijken op een lege string.
Zie http://php.net/trim
Zie http://php.net/trim
Je controleert op dit moment nog niet of de velden leeg zijn.
Verander regel 4 en 7
naar
Verander regel 4 en 7
naar
Gewijzigd op 09/04/2015 15:42:36 door Rick B
In principe zou ik dan alleen moeten filteren op username met trim omdat sommige wachtwoorden andere chars hebben, nou is de vraag wat zou ik dan moeten filteren bij usernames?
Wachtwoorden kunnen nooit leeg zijn, dus een controle daarop kan geen kwaad tijdens het inloggen of registreren. Die trim() kan je daar dan achterwege laten.
Ik maak nu gebruik van trim zoals je zei. alleen als ik nu spaties intoets bij het login form kom ik uit bij die echo van rest van de code..
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$errors = array();
if (trim($_POST["username"])==" ") {
$errors[] = "Vul wel een gebruikersnaam in";
}
if (trim($_POST["password"])==" ") {
$errors[] = "Vul wel een wachtwoord in";
}
if (!empty($errors)) {
foreach($errors as $error) {
echo $error."<br>";
}
die();
} else {
#Hier kom ik dan uit
echo "Rest van de code.";
}
} else {
echo "Geen formulier verstuurd.";
}
?>
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$errors = array();
if (trim($_POST["username"])==" ") {
$errors[] = "Vul wel een gebruikersnaam in";
}
if (trim($_POST["password"])==" ") {
$errors[] = "Vul wel een wachtwoord in";
}
if (!empty($errors)) {
foreach($errors as $error) {
echo $error."<br>";
}
die();
} else {
#Hier kom ik dan uit
echo "Rest van de code.";
}
} else {
echo "Geen formulier verstuurd.";
}
?>
- Controleer op een lege string, zie mijn voorbeeld nog eens.
- die() is niet nodig. Geen enkel script hoort 'dood' te gaan.
- Wat nu als mijn wachtwoord met een spatie begint?
- die() is niet nodig. Geen enkel script hoort 'dood' te gaan.
- Wat nu als mijn wachtwoord met een spatie begint?
Gewijzigd op 09/04/2015 15:52:14 door - Ariën -
Klopt want je kijkt niet of ze leeg zijn,maar je kijkt of er een spatie in zit.
Dus niet ==" "
Maar ==""
Dus niet ==" "
Maar ==""
Haal de spatie weg tussen " "
Gewijzigd op 09/04/2015 15:56:15 door Rick B
Waarom die() ?




