inhoud checkbox in mysql db
Pagina: « vorige 1 2 3 volgende »
fetch_array(MYSQLI_ASSOC)
Het is inderdaad de bedoeling dat $fotos alles krijgt, maar op dit moment lijkt het erop dat hij er maar 1 pakt :(
Regel 81 is overigens;
Code (php)
1
2
3
4
5
2
3
4
5
<?php
in het form:
echo '<input type="text" name="title[]" value="'.$fotos['title'].'" />';
?>
in het form:
echo '<input type="text" name="title[]" value="'.$fotos['title'].'" />';
?>
dan moet je fetchen volgens mijn voorbeeld.
Erwin zijn voorbeeld is beter.
Gewijzigd op 29/07/2014 13:31:49 door Frank Nietbelangrijk
Hoezo alleen door jou?
Ger van Steenderen op 25/07/2014 17:51:50:
Je geeft het id mee in de naam van de input, als volgt:
Als je dit ook voor de andere inputs doet, kan je die als volgt uitlezen
Code (php)
Frank Nietbelangrijk op 29/07/2014 13:09:30:
En dat maakt het geheel best wel ingewikkeld voor iemand die er nog niet zo heel lang mee aan het stoeien is
Ik krijg inderdaad wel de indruk dat het lastig is. Zat gister al te denken of een option-box niet eenvoudiger is. 4 opties die je kan kiezen, offline, homepage, fotoboek, home en fotoboek.
Is dat ook eenvoudiger of lijkt het maar zo?
[ ] Fotoalbum [ ] Homepage
Je hebt namelijk niet echt vier keuzen, maar slechts twee keuzen die logisch samenhangen.
Code (php)
1
2
3
4
5
6
2
3
4
5
6
+----+-----------------------+
| 00 | Offline |
| 10 | Fotoalbum |
| 01 | Homepage |
| 11 | Fotoalbum en homepage |
+----+-----------------------+
| 00 | Offline |
| 10 | Fotoalbum |
| 01 | Homepage |
| 11 | Fotoalbum en homepage |
+----+-----------------------+
Gewijzigd op 29/07/2014 15:27:31 door Ward van der Put
vinkjes staat nu altijd aan, ookal is het in de DB op false. dit veranderd ook niet als ik de vinkjes uitzet of weer aan...
Als ik een vinkje UIT zet, dan zie ik ook dat hij in de POST goed meepakt, wat ik mis een ID bij de HOME (als ik die uitvink) dus hij ziet wel dat ik iets doe maar hij is en blijft aangevinkt.
Wat ik heb is. Weer volledige code omdat ik $fotos[$i] in de $_POST heb moeten aanpassen omdat $fotos niet bestond. Dat klopte ook omdat ik die array niet had (zat niveau lager) en daardoor kon ik alles via $_POST['title'] aanroepen.
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
67
68
69
70
71
72
73
74
75
76
77
78
79
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
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
require('../lib/dbconnection.php');
$query = 'SELECT * FROM gallery where image_deleted = "false" order by id desc';
$result=$conn->query($query);
$rows=$result->num_rows;
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
/*
eerst alle ['homepage'] elementen op false!
Dit is ook een loop door alle elementen van $fotos maar met een for() ipv een foreach().
Dit doen we omdat we de array $fotos moeten veranderen (en niet alleen uitlezen).
*/
for($i = 1 ; $i < count($rows) ; $i++)
$_POST['id'][$i]['home'] = false;
/*
checkboxen worden alleen maar gepost als ze aanstaan.
Als ze allemaal uitstaan dan is er ook geen variabele $_POST['home'] en we moeten
dit dus eerst controleren.
*/
if(isset($_POST['home']))
{
// loop door alle elementen van $fotos
for($i = 1 ; $i < count($rows) ; $i++) {
// indien het id van de foto in de array $_POST['home'] voorkomt
if(in_array($_POST[$i], $_POST['home']))
$_POST['id'][$i]['home'] = true;
}
}
/*
text-inputs worden altijd gepost.
We hoeven dus niet nog eens te controleren of $_POST['title'] wel bestaat.
*/
// $i = 0;
// foreach($_POST['title'] as $title)
// {
// $_POST[$i++]['title'] = $title; // de ++ achter $i++ zorgt er voor dat $i met 1 verhoogd wordt.
// }
echo '<pre>';
print_r($_POST);
echo '</pre>';
$id = $_POST['id'];
$title = $_POST['title'];
$caption = $_POST['caption'];
$home = $_POST['home'];
$fotoboek = $_POST['fotoboek'];
for($i=0;$i<$rows;$i++){
$result1=mysqli_query($conn, "UPDATE gallery SET title='$title[$i]', caption='$caption[$i]', home='$home[$i], fotoboek='$fotoboek[$i]' WHERE id='$id[$i]'");
}
header("location:phphulp.php");
//
//mysqli_free_result($result);
//mysqli_close($conn);
}
<form action="" method="post">
while($fotos=$result->fetch_array(1) ){
echo '<input type="text" name="id[]" value="'.$fotos['id'].'" />';
echo '<input type="text" name="title[]" value="'.$fotos['title'].'" />';
echo '<input type="text" name="caption[]" value="'.$fotos['caption'].'" />';
echo '<input type="checkbox" name="home[]" value="'.$fotos['id'].'"';
echo $fotos['home']?' checked="checked"':'false';
echo ' /> home';
echo '<input type="checkbox" name="fotoboek[]" value="'.$fotos['id'].'"';
echo $fotos['fotoboek']?' checked="checked"':'false';
echo ' /> fotoboek<br>';
}
<input type="submit" value="Verzenden" />
</form>
?>
require('../lib/dbconnection.php');
$query = 'SELECT * FROM gallery where image_deleted = "false" order by id desc';
$result=$conn->query($query);
$rows=$result->num_rows;
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
/*
eerst alle ['homepage'] elementen op false!
Dit is ook een loop door alle elementen van $fotos maar met een for() ipv een foreach().
Dit doen we omdat we de array $fotos moeten veranderen (en niet alleen uitlezen).
*/
for($i = 1 ; $i < count($rows) ; $i++)
$_POST['id'][$i]['home'] = false;
/*
checkboxen worden alleen maar gepost als ze aanstaan.
Als ze allemaal uitstaan dan is er ook geen variabele $_POST['home'] en we moeten
dit dus eerst controleren.
*/
if(isset($_POST['home']))
{
// loop door alle elementen van $fotos
for($i = 1 ; $i < count($rows) ; $i++) {
// indien het id van de foto in de array $_POST['home'] voorkomt
if(in_array($_POST[$i], $_POST['home']))
$_POST['id'][$i]['home'] = true;
}
}
/*
text-inputs worden altijd gepost.
We hoeven dus niet nog eens te controleren of $_POST['title'] wel bestaat.
*/
// $i = 0;
// foreach($_POST['title'] as $title)
// {
// $_POST[$i++]['title'] = $title; // de ++ achter $i++ zorgt er voor dat $i met 1 verhoogd wordt.
// }
echo '<pre>';
print_r($_POST);
echo '</pre>';
$id = $_POST['id'];
$title = $_POST['title'];
$caption = $_POST['caption'];
$home = $_POST['home'];
$fotoboek = $_POST['fotoboek'];
for($i=0;$i<$rows;$i++){
$result1=mysqli_query($conn, "UPDATE gallery SET title='$title[$i]', caption='$caption[$i]', home='$home[$i], fotoboek='$fotoboek[$i]' WHERE id='$id[$i]'");
}
header("location:phphulp.php");
//
//mysqli_free_result($result);
//mysqli_close($conn);
}
<form action="" method="post">
while($fotos=$result->fetch_array(1) ){
echo '<input type="text" name="id[]" value="'.$fotos['id'].'" />';
echo '<input type="text" name="title[]" value="'.$fotos['title'].'" />';
echo '<input type="text" name="caption[]" value="'.$fotos['caption'].'" />';
echo '<input type="checkbox" name="home[]" value="'.$fotos['id'].'"';
echo $fotos['home']?' checked="checked"':'false';
echo ' /> home';
echo '<input type="checkbox" name="fotoboek[]" value="'.$fotos['id'].'"';
echo $fotos['fotoboek']?' checked="checked"':'false';
echo ' /> fotoboek<br>';
}
<input type="submit" value="Verzenden" />
</form>
?>
kortom; vinkjes werken niet en ondanks dat mijn aangepaste tekst in de post zit, krijg ik het niet in de DB.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
for($i = 1 ; $i < count($rows) ; $i++)
$_POST['id'][$i]['home'] = false;
if(isset($_POST['home']))
{
// loop door alle elementen van $fotos
for($i = 1 ; $i < count($rows) ; $i++) {
// indien het id van de foto in de array $_POST['home'] voorkomt
if(in_array($_POST[$i], $_POST['home']))
$_POST['id'][$i]['home'] = true;
}
}
?>
for($i = 1 ; $i < count($rows) ; $i++)
$_POST['id'][$i]['home'] = false;
if(isset($_POST['home']))
{
// loop door alle elementen van $fotos
for($i = 1 ; $i < count($rows) ; $i++) {
// indien het id van de foto in de array $_POST['home'] voorkomt
if(in_array($_POST[$i], $_POST['home']))
$_POST['id'][$i]['home'] = true;
}
}
?>
Maar vervolgens gebruik je dat niet, want je kijkt weer gewoon naar $_POST['home']:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
$home = $_POST['home']; //moet dit niet $_POST['id'] zijn?
$result1=mysqli_query(
$conn,
"UPDATE gallery
SET title='$title[$i]',
caption='$caption[$i]',
home='$home[$i],
fotoboek='$fotoboek[$i]'
WHERE id='$id[$i]'"); //en hier home='$home[$i]['home']'?
?>
$home = $_POST['home']; //moet dit niet $_POST['id'] zijn?
$result1=mysqli_query(
$conn,
"UPDATE gallery
SET title='$title[$i]',
caption='$caption[$i]',
home='$home[$i],
fotoboek='$fotoboek[$i]'
WHERE id='$id[$i]'"); //en hier home='$home[$i]['home']'?
?>
Overigens mist er ook een quotje bij home='$home[$i] (geen afsluitende quote).
Dat zie ik niet gebeuren...
Tevens heb ik vinkjes terwijl de value in de DB false is en dan zou ik geen vinkje moeten hebben of werkt dat toch even anders?
en hoe kan het dat de waarde in mijn post, niet in mijn db komt? bij een print_r zie ik het wel staan maar vervolgens wordt er niets gedaan daarmee
En verder is dit gewoon slordig: $home[$i]]['home']'
(na de $i staan twee sluitende blok haken, moet er 1 zijn)
Overigens kan het nu ook zijn dat je in de knoop komt met al die quotes binnen quotes. Als ik het mij goed herinner moet je array keys niet voorzien van quotes als de variabele binnen een string met dubbele quotes staat. Omdat ik het nooit zo gebruik ben ik er niet helemaal zeker van. Ik zou er in elk geval voor kiezen om alles buiten quotes te halen, persoonlijk vind ik dat overzichtelijker. Wat het 1 niet beter maakt dan het ander, puur persoonlijke voorkeur:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$result1=mysqli_query($conn,
"UPDATE gallery SET title='".$title[$i]."',
caption='".$caption[$i]."',
home='".$home[$i]."',
fotoboek='".$fotoboek[$i]."'
WHERE home='".$home[$i]['home']."'");
?>
$result1=mysqli_query($conn,
"UPDATE gallery SET title='".$title[$i]."',
caption='".$caption[$i]."',
home='".$home[$i]."',
fotoboek='".$fotoboek[$i]."'
WHERE home='".$home[$i]['home']."'");
?>
Edit: inmiddels heb je je post aangepast, dus geen idee of bovenstaande nog terechte opmerkingen zijn. Op wat je nu post kan ik geen zinnig antwoord geven. Anders dan dat je script vol fouten zat en het dus allemaal niet werkt.
Gewijzigd op 30/07/2014 09:40:06 door Erwin H
Erwin H op 30/07/2014 09:37:50:
Je hebt nog steeds: $home = $_POST['home'];
En verder is dit gewoon slordig: $home[$i]]['home']'
(na de $i staan twee sluitende blok haken, moet er 1 zijn)
En verder is dit gewoon slordig: $home[$i]]['home']'
(na de $i staan twee sluitende blok haken, moet er 1 zijn)
Inderdaad had ik ook al gezien en ik poste te snel en zag nog foutje zoals $home = $_POST['home'];
Erwin H op 30/07/2014 09:37:50:
Overigens kan het nu ook zijn dat je in de knoop komt met al die quotes binnen quotes. Als ik het mij goed herinner moet je array keys niet voorzien van quotes als de variabele binnen een string met dubbele quotes staat. Omdat ik het nooit zo gebruik ben ik er niet helemaal zeker van. Ik zou er in elk geval voor kiezen om alles buiten quotes te halen, persoonlijk vind ik dat overzichtelijker. Wat het 1 niet beter maakt dan het ander, puur persoonlijke voorkeur:
Dit ga ik ook nog even aanpassen..
Erwin H op 30/07/2014 09:37:50:
Edit: inmiddels heb je je post aangepast, dus geen idee of bovenstaande nog terechte opmerkingen zijn. Op wat je nu post kan ik geen zinnig antwoord geven. Anders dan dat je script vol fouten zat en het dus allemaal niet werkt.
ga nog ff alles nalopen. Misschien kan Frank nog iets zinnigs zeggen.
Sorry dat ik nu echt veel vraag maar ik merk gewoon echt dat ik iets wilde wat in mijn hoofd simpel klonk maar echt lastig is voor een beginner.. Ben super blij met jullie hulp want anders was ik er echt niet gekomen en hoop dat ik nog even van jullie gebruik mag maken tot het werkt...
kudo's voor de helpers :)
Als je het hebt aangepast, post het dan nog eens, gaan we zoeken naar de volgende fouten (mochten die er nog in staan).
wat betekend:
Illegal string offset 'home' in.....
snap de uitleg niet op inet...
melding geeft hij op regel 59, en dat is
Dat betekent dat de key 'home' niet bestaat in die array. $home[$i] kan wel bestaan, maar $home[$i]['home'] dus niet.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$update = $conn->prepare('UPDATE
gallery
SET
title = ?,
caption = ?,
home = ?,
fotoboek = ?
WHERE
id = ?');
$update->bind_param('ssssi', $title, $caption, $home, $fotoboek, $id);
foreach ($_POST['title'] as $pid => $phototitle) {
$title = $phototitle;
$caption = $_POST['caption'][$pid];
$id = $pid;
$home = (isset($_POST['home']) && in_array($pid, $_POST['home'])) ? 'true' : 'false';
$fotoboek = (isset($_POST['fotoboek']) && in_array($pid, $_POST['fotoboek'])) ? 'true' : 'false';
$update->execute();
}
?>
$update = $conn->prepare('UPDATE
gallery
SET
title = ?,
caption = ?,
home = ?,
fotoboek = ?
WHERE
id = ?');
$update->bind_param('ssssi', $title, $caption, $home, $fotoboek, $id);
foreach ($_POST['title'] as $pid => $phototitle) {
$title = $phototitle;
$caption = $_POST['caption'][$pid];
$id = $pid;
$home = (isset($_POST['home']) && in_array($pid, $_POST['home'])) ? 'true' : 'false';
$fotoboek = (isset($_POST['fotoboek']) && in_array($pid, $_POST['fotoboek'])) ? 'true' : 'false';
$update->execute();
}
?>
Ger; ik doe nog even geen prepare omdat ik eerst dit werkend wil krijgen zonder nog meer "voor mij lastige" codes toe te voegen. merk dat dit al een beetje boven mn pet gaat :)
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
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
<?php
require('../lib/dbconnection.php');
$query = 'SELECT * FROM gallery where image_deleted = "false" order by id desc';
$result=$conn->query($query);
$rows=$result->num_rows;
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
for($i = 1 ; $i < count($rows) ; $i++)
$_POST['id'][$i]['home'] = false;
if(isset($_POST['home']))
{
for($i = 1 ; $i < count($rows) ; $i++) {
if(in_array($_POST[$i], $_POST['home']))
$_POST['id'][$i]['home'] = true;
}
}
$i = 0;
foreach($_POST['title'] as $title)
{
$_POST[$i++]['title'] = $title;
}
$id = $_POST['id'];
$title = $_POST['title'];
$caption = $_POST['caption'];
$home = $_POST['id'];
$fotoboek = $_POST['fotoboek'];
for($i=0;$i<$rows;$i++){
$result1=mysqli_query($conn,
"UPDATE gallery SET title='".$title[$i]."',
caption='".$caption[$i]."',
home='".$home[$i]."',
fotoboek='".$fotoboek[$i]."'
WHERE home='".$home[$i]."'");
}
//header("location:/phphulp.php");
//mysqli_free_result($result);
//mysqli_close($conn);
}
<form action="" method="post">
while($fotos=$result->fetch_array(1) ){
echo '<input type="text" name="id[]" value="'.$fotos['id'].'" />';
echo '<input type="text" name="title[]" value="'.$fotos['title'].'" />';
echo '<input type="text" name="caption[]" value="'.$fotos['caption'].'" />';
echo '<input type="checkbox" name="home[]" value="'.$fotos['id'].'"';
echo $fotos['home']?' checked="checked"':'false';
echo ' /> home';
echo '<input type="checkbox" name="fotoboek[]" value="'.$fotos['id'].'"';
echo $fotos['fotoboek']?' checked="checked"':'false';
echo ' /> fotoboek<br>';
}
<input type="submit" value="Verzenden" />
</form>
?>
require('../lib/dbconnection.php');
$query = 'SELECT * FROM gallery where image_deleted = "false" order by id desc';
$result=$conn->query($query);
$rows=$result->num_rows;
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
for($i = 1 ; $i < count($rows) ; $i++)
$_POST['id'][$i]['home'] = false;
if(isset($_POST['home']))
{
for($i = 1 ; $i < count($rows) ; $i++) {
if(in_array($_POST[$i], $_POST['home']))
$_POST['id'][$i]['home'] = true;
}
}
$i = 0;
foreach($_POST['title'] as $title)
{
$_POST[$i++]['title'] = $title;
}
$id = $_POST['id'];
$title = $_POST['title'];
$caption = $_POST['caption'];
$home = $_POST['id'];
$fotoboek = $_POST['fotoboek'];
for($i=0;$i<$rows;$i++){
$result1=mysqli_query($conn,
"UPDATE gallery SET title='".$title[$i]."',
caption='".$caption[$i]."',
home='".$home[$i]."',
fotoboek='".$fotoboek[$i]."'
WHERE home='".$home[$i]."'");
}
//header("location:/phphulp.php");
//mysqli_free_result($result);
//mysqli_close($conn);
}
<form action="" method="post">
while($fotos=$result->fetch_array(1) ){
echo '<input type="text" name="id[]" value="'.$fotos['id'].'" />';
echo '<input type="text" name="title[]" value="'.$fotos['title'].'" />';
echo '<input type="text" name="caption[]" value="'.$fotos['caption'].'" />';
echo '<input type="checkbox" name="home[]" value="'.$fotos['id'].'"';
echo $fotos['home']?' checked="checked"':'false';
echo ' /> home';
echo '<input type="checkbox" name="fotoboek[]" value="'.$fotos['id'].'"';
echo $fotos['fotoboek']?' checked="checked"':'false';
echo ' /> fotoboek<br>';
}
<input type="submit" value="Verzenden" />
</form>
?>
Ik krijg geen foutmeldingen dus dat gaat goed :)
Echter werkt mn update totaal niet. Als ik tekst aanpas komt het niet in m'n database te staan terwijl het wel in mn post komt en in mn ARRAY-object (noem je dat zo???)
tevens zijn al mn checkboxen "gechecked" terwijl de waarde in de DB op false staat.
overigens, als ik alles probeer te snappen, snap ik niet waarom Frank onderstaande erin zette
Deze wordt enkel geactiveerd als de POST-method wordt aangeroepen. Mn checkboxen zouden dan op false worden gezet (uitgevinkt ga ik vanuit dan...)
maar dat is in mn post al, terwijl ik daarvoor heb aangeven welke ik op "true" wil hebben, met bovenstaande wordt het dan weer op false gezet. Klopt die beredenering?
Gaat erom om een volledige array aan te maken voor elke checkbox. Zoals je inmiddels weet, worden alleen aangevinkte checkboxes naar de server gestuurd. Om ervoor te zorgen dat je ook een waarde hebt voor de niet aangevinkte, heeft Frank dit stuk (en de initialisatie erboven) voorgesteld, zodat je later in je query altijd voor elke checkbox een true of false waarde hebt.
Alleen zie ik nu dat er in de for loop iets mis gaat.
$rows is het aantal rijen dat je ophaalt uit je database. Het is een getal. count($rows) gebruik je om het aantal element uit een array te tellen. Dat werkt dus niet op een getal. Die for loop (op regel 11 en 17) moet dus zijn:
Dan krijg je compleet gevulde arrays in $_POST['id'] en dan kan je ook je update statement goed maken, want die gaat nu fout:
(kleurtjes kloppen even niet omdat ik maar een deel van de string copieer)
$home[$i] is in feite $_POST['id'][$i]. En dat is een array nu (met bovenstaande aanpassing) en dat wil je niet, je wil de waarde van het element 'home' in die array. Dus:
Dat was boven al correct, alleen omdat die for loops verkeerd liepen werkte het niet.
Waarom alles zo moeilijk.
Als je nou in het formulier overal het id meegeeft dan weet je toch wat bij wat hoort.
Uit je dubbelpost: http://www.phphulp.nl/php/forum/topic/checkbox-waarden-in-mysqltabel/95525/#686307
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
while($fotos=$result->fetch_array(1) ){
echo '<input type="text" name="id['.$fotos['id'].']" value="'.$fotos['id'].'" />';
echo '<input type="text" name="title['.$fotos['id'].']" value="'.$fotos['title'].'" />';
echo '<input type="text" name="caption['.$fotos['id'].']" value="'.$fotos['caption'].'" />';
echo '<input type="checkbox" name="home['.$fotos['id'].']"'.($fotos['home'] ? ' checked="checked"' : '').' /> home';
echo '<input type="checkbox" name="fotoboek['.$fotos['id'].']"'.($fotos['fotoboek'] ? ' checked="checked"' : '').' /> fotoboek<br>';
}
?>
while($fotos=$result->fetch_array(1) ){
echo '<input type="text" name="id['.$fotos['id'].']" value="'.$fotos['id'].'" />';
echo '<input type="text" name="title['.$fotos['id'].']" value="'.$fotos['title'].'" />';
echo '<input type="text" name="caption['.$fotos['id'].']" value="'.$fotos['caption'].'" />';
echo '<input type="checkbox" name="home['.$fotos['id'].']"'.($fotos['home'] ? ' checked="checked"' : '').' /> home';
echo '<input type="checkbox" name="fotoboek['.$fotos['id'].']"'.($fotos['fotoboek'] ? ' checked="checked"' : '').' /> fotoboek<br>';
}
?>
En dan:
Ik vul in in het id veld:
Dit wordt allemaal voorkomen door met een prepared statement te werken.