update query + header werkt niet
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
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
<?php
elseif($typeID == 4)
{
if (isset($_POST['submit4'])) //wanneer er op volgende gedrukt is...
{
$id = $_GET['id']; //id van te updaten record ophalen
//variabelen aanmaken
$geslacht = $_POST['geslacht'];
$voornaam = $_POST['voornaam'];
$achternaam = $_POST['achternaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$voorvoegsel = $_POST['voorvoegsel'];
$email = $_POST['email'];
//alreeds aangemaakte record in vorige stap oproepen en updaten met de nieuwe gegevens
$query1 = "UPDATE gebruiker SET geslacht='".$geslacht."', voornaam='".$voornaam."', achternaam='".$achternaam."', tussenvoegsel='".$tussenvoegsel."', voorvoegsel='".$voorvoegsel."', email='".$email."' WHERE id=".$id;
mysql_query($query1) or die (mysql_error());
header("Location: ?page=admin"); //doorlinken naar stap 3 na het doen van de query
}
else
{
?>
<form action="?page=gebruikerstap2" method="post">
<table>
<tr>
<td>Geslacht</td>
<td>
<select name="geslacht" id="geslacht">
<option value="man">Man</option>
<option value="vrouw">Vrouw</option>
</select>
</td>
</tr>
<tr>
<td>Voornaam</td>
<td><input type="text" name="voornaam" id="voornaam"></td>
</tr>
<tr>
<td>Achternaam</td>
<td><input type="text" name="achternaam" id="achternaam"></td>
</tr>
<tr>
<td>Tussenvoegsel</td>
<td><input type="text" name="tussenvoegsel" id="tussenvoegsel"></td>
</tr>
<tr>
<td>Voorvoegsel</td>
<td><input type="text" name="voorvoegsel" id="voorvoegsel"></td>
</tr>
<tr>
<td>E-mail Adres</td>
<td><input type="text" name="email" id="email"></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit4" id="submit4" value="Toevoegen"></td>
</tr>
</table>
</form>
<?php
}
}
?>
elseif($typeID == 4)
{
if (isset($_POST['submit4'])) //wanneer er op volgende gedrukt is...
{
$id = $_GET['id']; //id van te updaten record ophalen
//variabelen aanmaken
$geslacht = $_POST['geslacht'];
$voornaam = $_POST['voornaam'];
$achternaam = $_POST['achternaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$voorvoegsel = $_POST['voorvoegsel'];
$email = $_POST['email'];
//alreeds aangemaakte record in vorige stap oproepen en updaten met de nieuwe gegevens
$query1 = "UPDATE gebruiker SET geslacht='".$geslacht."', voornaam='".$voornaam."', achternaam='".$achternaam."', tussenvoegsel='".$tussenvoegsel."', voorvoegsel='".$voorvoegsel."', email='".$email."' WHERE id=".$id;
mysql_query($query1) or die (mysql_error());
header("Location: ?page=admin"); //doorlinken naar stap 3 na het doen van de query
}
else
{
?>
<form action="?page=gebruikerstap2" method="post">
<table>
<tr>
<td>Geslacht</td>
<td>
<select name="geslacht" id="geslacht">
<option value="man">Man</option>
<option value="vrouw">Vrouw</option>
</select>
</td>
</tr>
<tr>
<td>Voornaam</td>
<td><input type="text" name="voornaam" id="voornaam"></td>
</tr>
<tr>
<td>Achternaam</td>
<td><input type="text" name="achternaam" id="achternaam"></td>
</tr>
<tr>
<td>Tussenvoegsel</td>
<td><input type="text" name="tussenvoegsel" id="tussenvoegsel"></td>
</tr>
<tr>
<td>Voorvoegsel</td>
<td><input type="text" name="voorvoegsel" id="voorvoegsel"></td>
</tr>
<tr>
<td>E-mail Adres</td>
<td><input type="text" name="email" id="email"></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit4" id="submit4" value="Toevoegen"></td>
</tr>
</table>
</form>
<?php
}
}
?>
ik krijg deze alleen niet werkend, zodra ik op submit druk, dan krijg ik een witte lege pagina terwijl ik op de admin pagina uit zou moeten komen, de pagina waar je wel op uit komt is gebruikerstap2.php en dat is de pagina waar dit script ook in staat, hij blijft dus op dezelfde pagina, maar dan zonder de variabelen die er voor de submit wel stonden.
ook werkt de update query niet.
deze code staat 4 keer onder elkaar in hetzelfde script omdat, daarom zie je ook een elseif staan.
dit is de tweede stap van in totaal 2 stappen. daarom moet er een record geupdate worden die alreeds aangemaakt is in stap 1, de id daarvan wordt meegegeven in de url.
Gewijzigd op 01/01/1970 01:00:00 door Stefan van Iwaarden
Zet error_reporting(E_ALL); bovenin je script. Lege pagina is vaak het gevolg van een error.
op regel 12 staat de $_GET voor de typeID
Code (php)
1
2
3
2
3
<?php
$typeID = $_GET['typeID']; //uit de url halen wat voor gebruiker er toegevoegd is
?>
$typeID = $_GET['typeID']; //uit de url halen wat voor gebruiker er toegevoegd is
?>
de url is http://www.elektronica-onderdelen.nl/gedegen/?page=gebruikerstap2&id=78&typeID=4
dus ik snap niet echt wat er verkeerd is dan.
dit ook tijdelijk onder je error_reporting
Gebruik ook isset() om te checken of ie bestaat.
(
[page] => gebruikerstap2
[id] => 80
[typeID] => 4
)
zou moeten kloppen dus, want aan de hand van het typeID bepaalt hij wel de juiste invulvelden, dus dat is wel goed, maar zodra hij moet gaan updaten en doorverwijzen naar een andere pagina gaat het fout.