bigsky Medlem sedan maj 2002 821 inlägg Frågan 3 jan. 2014 14:09 #1 Kör med mysql och php.
På en sida har jag ett antal checkboxar som alla har samma namn med name="report[]" men olika värden för value="". T ex. value="1", value="2" osv.
På den php sida som uppdaterar databasen vill jag ha följande kriterier:
Om en checkbox är ikryssad/vald:
Ska värdet läggas till i databasen om det inte redan finns där för då behöver ju inget göras.
Om en checkbox INTE är ikryssad/vald:
Ska värdet tas bort om det redan finns där, annars behöver inget göras.
Mina kolumner heter rest_id och ff_id i tabellen restform.
bigsky Medlem sedan maj 2002 821 inlägg Någon som vill hjälpa mig?
bigsky Medlem sedan maj 2002 821 inlägg Har löst det själv med:
foreach($_REQUEST['report'] as $report_id) {
$result = mysqli_query($con,"SELECT * FROM restform WHERE rest_id = $id AND ff_id = $report_id");
while($row = mysqli_fetch_array($result)) {
$ff_id = $row['ff_id'];
}
if ($report_id != $ff_id) {
mysqli_query($con,"INSERT INTO restform (rest_id, ff_id) VALUES ($id, $report_id)");
}
}
foreach($_REQUEST['report-id'] as $hidden_id) {
if(!in_array($hidden_id, $_REQUEST['report'])) {
mysqli_query($con,"DELETE FROM restform WHERE rest_id = '$id' AND ff_id = '$hidden_id'");
}
}
C casca Medlem sedan feb. 2000 5 891 inlägg Ser farligt ut det där, att mata $_REQUEST['report'] direkt in i en SQL-sats, utan att kontrollera vad man matar in för sträng. Kallas för SQL-injektion .