Хорошо, я знаю, что этот вопрос задавался ранее, и мы получили много разных ответов … Однако мы все еще не можем сделать это правильно.
Это выше в коде, где отображаются потоки. Он также вложен в эхо, отображающее таблицу. За исключением того, что отмечено комментариями, все остальные не находятся рядом с кодом, как они показаны. Я хотел, чтобы код выделил правильный путь.
<?php //More code here~
while ($x = $s->fetch_object()){
$c = $c==1?2:1;
echo '<tr>
<td style="border: 1px solid #1f2a19; padding-left: 5px; padding-right: 5px; " class="color1" width="1%" nowrap>
<input type="checkbox" class="check" name="check[]" value="'.($x->id).'" /></td>
//More displaying table code here.
';
}$s->close(); ?>
Ниже в коде рядом с тем, где кнопки появляются в конце страницы, у нас есть это.
<?php
if (u::isstaff()) {
?> <!--This is here because the file is an .php and most of the code is php.
Very little HTML is used.-->
<input type="submit" name="delete" value="Delete"/><?php // Same with this one. It is in the code.
if(isset($_POST['delete']))
{
$cnt=array();
$cnt=count($_POST['check']);
for($i=0;$i<$cnt;$i++)
{
$del_id=$_POST['check'][$i];
$query=("delete from forumposts where 'thread'='$del_id'");
mysql_query($query);
$query=("delete from forumthreads where 'id'='$del_id'");
mysql_query($query);
} //for
} //ispost delete
} //isstaff ?>
Целью этого кода является получение номера идентификатора потока из флажков и запуск его через функцию удаления при нажатии кнопки. Предоставление сотрудникам возможности удалять несколько тем в форуме одновременно.
Этот код работает только для удаления одного потока и является тем, на чем мы основываем функцию мульти удаления потока. Он находится в другом файле «thread.php»
<?php if ($_GET['act'] == 'deletethread'){
if (!u::ismod()) return f::deny();
$db->query("DELETE FROM forumposts
WHERE `thread`='{$thread->id}'");
if ($db->error) die(trigger_error($db->error) );
$db->query("DELETE FROM forumthreads
WHERE `id`='{$thread->id}'");
if ($db->error) die(trigger_error($db->error) );
s::go('board?i='.$thread->board);
}?>
================================================== ======
Так что я думаю, что потерпел неудачу на кнопке … Никогда не изучал Java раньше. Вот так выглядит средняя часть. У меня такое чувство, что я все еще делаю ошибочную часть, а также неправильно.
<input type="submit" name="delete" value="Delete"/>
<?php
if(isset($_POST['check_list'])){
$cnt=array();
$cnt=count($_POST['check_list']);
for($i=0;$i<$cnt;$i++)
{
$ids = implode(',', $_POST['check_list']);
mysqli_query("delete from forumposts where id in ($ids)");
mysqli_query($query);
mysqli_query("delete from forumthreads where id in ($ids)");
mysqli_query($query);
} //for
} //ispost delete
} //isstaff
?>
echo '<tr>
<td style="border: 1px solid #1f2a19; padding-left: 5px; padding-right: 5px; " class="color1" width="1%" nowrap>
<input type="checkbox" class="check" name="check[]" value="'.($x->id).'" />
</td>
В PHP-файле:
$ids = implode(',', $_POST['check']);
mysqli_query("delete from forumposts where id in ($ids)");
Других решений пока нет …