Man ir 1 veidlapa ar vairākiem izvēles rūtiņām (katrā no tām ir kods):
<input type="checkbox" name="check_list" value="<? echo $row['Report ID'] ?>">
Kur $row['Report ID']
ir primārā atslēga datu bāzē - tātad katra vērtība ir atšķirīga.
Kā es varētu noteikt, kuras izvēles rūtiņas ir atzīmētas? (Varbūt vairākas)
Tas attiecas uz ienākošo ziņojumu sistēmu, un man ir zemāk esoša poga, kuru nospiežot, es gribu, lai tiktu dzēsti visi ziņojumi (ids: $rinda['Ziņojuma ID']
), kuriem ir atzīmēts izvēles lodziņš's.
Iestatiet formā nosaukumu check_list[]
, un jūs varēsiet piekļūt visām izvēles rūtiņām kā masīvam ($_POST['check_list'][]
).
Lūk, neliels paraugs, kā pieprasīts:
<form action="test.php" method="post">
<input type="checkbox" name="check_list[]" value="value 1">
<input type="checkbox" name="check_list[]" value="value 2">
<input type="checkbox" name="check_list[]" value="value 3">
<input type="checkbox" name="check_list[]" value="value 4">
<input type="checkbox" name="check_list[]" value="value 5">
<input type="submit" />
</form>
<?php
if(!empty($_POST['check_list'])) {
foreach($_POST['check_list'] as $check) {
echo $check; //echoes the value set in the HTML form for each checked checkbox.
//so, if I were to check 1, 3, and 5 it would echo value 1, value 3, value 5.
//in your case, it would echo whatever $row['Report ID'] is equivalent to.
}
}
?>
attiecīgi jānosauc izvēles rūtiņas:
<input type="checkbox" name="check_list[]" value="…" />
tad jūs varat piekļūt visiem atzīmētajiem izvēles rūtiņām ar
// loop over checked checkboxes
foreach($_POST['check_list'] as $checkbox) {
// do something
}
ps. pārliecinieties, vai pareizi izvadiet izvades datus (htmlspecialchars()
).
<input type="checkbox" name="check_list[<? echo $row['Report ID'] ?>]" value="<? echo $row['Report ID'] ?>">
Un pēc amata varat tos pārlūkot:
if(!empty($_POST['check_list'])){
foreach($_POST['check_list'] as $report_id){
echo "$report_id was checked! ";
}
}
Vai arī iegūt noteiktu vērtību, kas publicēta no iepriekšējās lapas:
if(isset($_POST['check_list'][$report_id])){
echo $report_id . " was checked!<br/>";
}