Geen update.
Beste,
Ik heb hetvolgende script:
Alles word ge- update, behalve het nieuwe venster.
Ik heb als output:
Id: 1 Waarde: 1
Id: 3 Waarde: 1
Id: 2 Waarde: 1
Dit klopt, want nu heb ik alles "gecheckt".
Als ik id 3 uncheck en op me submit knop druk dan krijg ik de output:
Id: 1 Waarde: 1
Id: 2 Waarde: 1
En nu heeft hij niet de waarde in de database op 0 gezet.
Wat doe ik verkeerd?
Mvg Joost.
Ik heb hetvolgende script:
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
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
<?php
$error = 0;
$nieuw_venster = 0;
foreach($_POST as $key => $value){
if ($key != "submit") {
if (eregi("titel_", $key)) {
$id = str_replace("titel_", "", $key);
if ($db->query("UPDATE menu SET titel = '".add($_POST[$key])."' WHERE id = '".$id."'") != TRUE) {
echo 'Error: '.$db->error;
$error = 1;
}
}
elseif (eregi("link_", $key)) {
$id = str_replace("link_", "", $key);
if ($db->query("UPDATE menu SET link = '".add($_POST[$key])."' WHERE id = '".$id."'") != TRUE) {
echo 'Error: '.$db->error;
$error = 1;
}
}
elseif (eregi("nieuw_venster_", $key)) {
$id = str_replace("nieuw_venster_", "", $key);
if ($_POST[$key] == NULL) {
$nieuw_venster = 0;
}
else {
$nieuw_venster = 1;
}
echo "Id: ".$id." Waarde: ".$nieuw_venster."<br />";
if ($db->query("UPDATE menu SET nieuw_venster = '".add($nieuw_venster)."' WHERE id = '".$id."'") != TRUE) {
echo 'Error: '.$db->error;
$error = 1;
}
}
else {
echo 'Onbekende update.';
}
}
?>
$error = 0;
$nieuw_venster = 0;
foreach($_POST as $key => $value){
if ($key != "submit") {
if (eregi("titel_", $key)) {
$id = str_replace("titel_", "", $key);
if ($db->query("UPDATE menu SET titel = '".add($_POST[$key])."' WHERE id = '".$id."'") != TRUE) {
echo 'Error: '.$db->error;
$error = 1;
}
}
elseif (eregi("link_", $key)) {
$id = str_replace("link_", "", $key);
if ($db->query("UPDATE menu SET link = '".add($_POST[$key])."' WHERE id = '".$id."'") != TRUE) {
echo 'Error: '.$db->error;
$error = 1;
}
}
elseif (eregi("nieuw_venster_", $key)) {
$id = str_replace("nieuw_venster_", "", $key);
if ($_POST[$key] == NULL) {
$nieuw_venster = 0;
}
else {
$nieuw_venster = 1;
}
echo "Id: ".$id." Waarde: ".$nieuw_venster."<br />";
if ($db->query("UPDATE menu SET nieuw_venster = '".add($nieuw_venster)."' WHERE id = '".$id."'") != TRUE) {
echo 'Error: '.$db->error;
$error = 1;
}
}
else {
echo 'Onbekende update.';
}
}
?>
Alles word ge- update, behalve het nieuwe venster.
Ik heb als output:
Id: 1 Waarde: 1
Id: 3 Waarde: 1
Id: 2 Waarde: 1
Dit klopt, want nu heb ik alles "gecheckt".
Als ik id 3 uncheck en op me submit knop druk dan krijg ik de output:
Id: 1 Waarde: 1
Id: 2 Waarde: 1
En nu heeft hij niet de waarde in de database op 0 gezet.
Wat doe ik verkeerd?
Mvg Joost.
Edit::
Iets verderop is de check of er een error is, er is geen error.
Edit2::
Van 0 naar 1 wijzigen werkt wel...
Gewijzigd op 01/09/2010 23:26:52 door Joost van der Meijden
Gesponsorde koppelingen:
Werkt helaas niet :(
Het rare is ook dat ik niet van alle checkboxxen een output krijg. Van de lege/unchecked checkboxxen krijg ik geen output.
Het rare is ook dat ik niet van alle checkboxxen een output krijg. Van de lege/unchecked checkboxxen krijg ik geen output.
Gewijzigd op 03/09/2010 00:10:35 door Joost van der Meijden
geef je dan uberhaupt vanuit het formulier (de checkboxen) wel iets mee naar het script? Ik zou dan denken zoals je het nu zelf al zegt het probleem bij de koppeling zit tussen formulier en script en zou dus beginnen bij het begin. Het formulier.
Dit is de code voor mijn checkboxen:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
if ($row["nieuw_venster"] == 1) {
echo '<input type="checkbox" class="checkbox1" name="nieuw_venster_'.$row["id"].'" style="margin-right: 2px;" checked="checked"/><label>Open in nieuw venster</label>';
}
else {
echo '<input type="checkbox" class="checkbox2" name="nieuw_venster_'.$row["id"].'" style="margin-right: 2px;" /><label>Open in nieuw venster</label>';
}?>
if ($row["nieuw_venster"] == 1) {
echo '<input type="checkbox" class="checkbox1" name="nieuw_venster_'.$row["id"].'" style="margin-right: 2px;" checked="checked"/><label>Open in nieuw venster</label>';
}
else {
echo '<input type="checkbox" class="checkbox2" name="nieuw_venster_'.$row["id"].'" style="margin-right: 2px;" /><label>Open in nieuw venster</label>';
}?>


