Ik heb een formulier waarbij de gegevens uit de database komen dit werkt perfect.
Alleen als ik hem moet gaan updaten dan gaat het fout. Ik heb 2 types op de pagina een normaal tekstveld en een option list alleen er kunnen er meerdere toegevoegd worden.
<form method="post">
<!-- input 1 -->
<input type="hidden" name="id[]" value="1" />
<input type="hidden" name="type[]" value="1" />
<textarea name="content[]" >.$tekstuitdatabase.</textarea>
<!-- input 2 -->
<input type="hidden" name="id[]" value="3" />
<input type="hidden" name="type[]" value="2" />
<select name="afbeelding[]" >
<option value="1">Logo zonder ondertekst</option>
<option value="2">Logo met ondertekst</option>
</select>
<!-- input 3 -->
<input type="hidden" name="id[]" value="6" />
<input type="hidden" name="type[]" value="1" />
<textarea name="content[]" >.$tekstuitdatabase.</textarea>
base.</textarea>
<input type="submit" value="opslaan" />
</form>
php:
for ($i = 0; $i < count($_POST['type']); $i++) {
if($_POST['type'][$i] == 1){
$db->query("UPDATE blocks SET content = '".$_POST['content'][$i]."' WHERE block_id = '".$_POST['id'][$i]."' LIMIT 1;");
}
if($_POST['type'][$i] == 2){
$db->query("UPDATE blocks SET afbeelding = '".$_POST['afbeelding'][$i]."' WHERE block_id = '".$_POST['id'][$i]."' LIMIT 1;");
}
}
Door de count wordt de array alleen verkeerd.
1e = id[1], content[1]
2e = id[2], afbeelding[1]
3e = id[3], content[2]
Hoe kan ik dit oplossen zonder extra input velden oid neer te zetten.