Probleem registratie formulier
ik maak een applicatie met een registratieformulier
maar ik zou graag willen dat hij goed valideert.
Wat er nu gebeurt is dat als je alles invult, de pagina refresht en alle velden terug leeg zijn
ik zou willen dat als er velden niet ingevuld zijn, dat er een boodschap komt en als alles in orde is dat hij terug naar de home page gaat.
Dit is de code van het formulier
<div id="registerform">
<form id='register' action='register.php' method="post">
<fieldset>
<legend accesskey="y">About You</legend>
<table>
<tr>
<td><label for="userName">User name:</label></td>
<td><input type="text" name="UserName" value="" size="20" id="userName" /></td>
</tr>
<tr>
<td><label for="password">Password:</label></td>
<td><input type="password" name="Password" value="" size="20" id="password" /></td>
</tr>
<tr>
<td><label for="confPassword">Confirm Password:</label></td>
<td><input type="password" name="Confirmpassword" size="20" id="confPassword" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td><label for="firstName">First name:</label></td>
<td><input type="text" name="FirstName" size="20" id="firstName" /></td>
</tr>
<tr>
<td><label for="lastName">Last name:</label></td>
<td><input type="text" name="LastName" size="20" id="lastName" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td><label for="email">Email address:</label></td>
<td><input type="text" name="Email" size="20" id="email" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Gender:</td>
<td><input type="radio" name="Gender" value="male" />Male</td>
</tr>
<tr>
<td></td>
<td><input type="radio" name="Gender" value="female" />Female</td>
</tr>
<tr><td> </td><td> </td></tr>
<td><input type="submit" name="btnsubmit" size="20" id="btnsubmit" class="button2" value="Registreer" /></td>
</table>
</fieldset>
</form>
</div>
dit is de code van register.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
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
<?php
include('classes/User.php');
session_start();session_destroy();
session_start();
if($_POST["UserName"] && $_POST["Password"] && $_POST["ConfirmPassword"] && $_POST["FirstName"] && $_POST["LastName"] && $_POST["Email"] && $_POST["Gender"] )
{
if($_POST["Password"]==$_POST["ConfirmPassword"])
{
try
{
$oUser = new User();
$oUser->Username = $_POST['UserName'];
$oUser->Password = $_POST['Password'];
$oUser->Confirmpassword = $_POST['Confirmpassword'];
$oUser->Firstname = $_POST['FirstName'];
$oUser->Lastname = $_POST['LastName'];
$oUser->Email = $_POST['Email'];
$oUser->Gender = $_POST['Gender'];
$oUser->Save();
print "<h1>you have registered sucessfully</h1>";
print "<a href='home.php'>go to login page</a>";
}
catch{
print "passwords doesnt match";
}
else print"invalid input data";
?>
include('classes/User.php');
session_start();session_destroy();
session_start();
if($_POST["UserName"] && $_POST["Password"] && $_POST["ConfirmPassword"] && $_POST["FirstName"] && $_POST["LastName"] && $_POST["Email"] && $_POST["Gender"] )
{
if($_POST["Password"]==$_POST["ConfirmPassword"])
{
try
{
$oUser = new User();
$oUser->Username = $_POST['UserName'];
$oUser->Password = $_POST['Password'];
$oUser->Confirmpassword = $_POST['Confirmpassword'];
$oUser->Firstname = $_POST['FirstName'];
$oUser->Lastname = $_POST['LastName'];
$oUser->Email = $_POST['Email'];
$oUser->Gender = $_POST['Gender'];
$oUser->Save();
print "<h1>you have registered sucessfully</h1>";
print "<a href='home.php'>go to login page</a>";
}
catch{
print "passwords doesnt match";
}
else print"invalid input data";
?>
kunnen jullieme aub helpen, het is vrij dringend
dit script als voorbeeld voor een goede afhandeling...
Lijkt erop dat er ergens een onbedoelde redirect of iets staat? Verder zijn er wel meer kanttekeningen te plaatsen bij de manier waarop je je formulier afhandelt. Kijk bijvoorbeeld eens naar