Ik loop tegen mijn eigen programmeer capaciteiten aan en hoop dat iemand mij de juiste richting kan opsturen/helpen om het volgende te maken:

In een database staan een 100-tal inschrijvingen, waarvan bij gehouden dient te worden of deze mensen aanwezig zijn geweest. Hiervoor kun je natuurlijk het 1 voor 1 wijzigen, maar ik ben meer op zoek naar een manier om alle inschrijving in 1 beeld te krijgen en aan de hand hiervan iedereen die aanwezig was aan te vinken en vervolgens de wijzigingen te bewaren.
Tevens wil ik eventueel nog bij de opmerkingen dit veld kunnen wijzigen.



Niet zo gek moeilijk hoor. Haal met een SELECT query alle namen op die zich hebben ingeschreven. Aan de hand daarvan maak je een formulier waar je de namen kan aanvinken. Na de submit zorg je dat die in een array wordt gestopt. Daarna kan je met een foreach loop je update query uitvoeren.

EDIT: Dit is het begin: zal nog even verwerking erbij posten zometeen, maar erger me er altijd aan als m'n "moeite" voor niks is geweest omdat iemand me voor is geweest:

<?php

if($_SERVER['REQUEST_METHOD'] == "POST"){
//verwerken
//met een foreach loop een query opstellen voor elke naam
foreach($_POST['aanwezig'] as $key => $value){
$query = "UPDATE namen SET aanwezig = 'ja' WHERE naam = '".$value."";
//query uitvoeren
$result = mysql_query($query);
}
}
else{
//formulier maken
//namen ingeschreven mensen ophalen uit database
$query = "SELECT namen FROM inschrijvingstabel";
if(!$result = mysql_query($query)){
//fout in query, foutmelding
trigger_error(mysql_error());
}
else{
//query gelukt
//formulier opzetten
echo 'Vink hier de namen aan die aanwezig waren';
echo '<form>';
while($rows = mysql_fetch_assoc($result);){
echo $rows['namen'].'<input type = "checkbox" name= "aanwezig" value = "'.$rows['namen'].'" /><br />';
}
echo '</form>';
}
}
?>

EDIT2: En natuurlijk wel even alles aanpassen aan jouw situatie. (queries nu gewoon beetje gegokt, maar je begrijpt wat ik bedoel als het goed is)
Thanx.... ik ga hiermee aan de slag, ik denk dat ik een eind kom zo!!

Reageren