Удалить несколько строк, если установлен флажок - PullRequest
0 голосов
/ 18 декабря 2009

Я хочу создать функцию, которая позволяет пользователю модерировать вопросы и похожа на WordPress комментарии или обычную модерацию электронной почты, которая использует флажок для одобрения / удаления многих вопросов одновременно.

Как мне изменить следующий код, чтобы проверить, какие вопросы проверяются, и реагировать на кнопки удаления при нажатии? Из приведенного ниже кода вы можете заметить, что в настоящее время я могу делать это с отдельными вопросами, но я хочу дать пользователю больше возможностей.

 <h2><a href="#">Moderate Questions</a></h2>
 <div>
    <button type="button" class="btn" name="delete" id="delete">Delete</button>
    <button type="button" class="btn" name="approve" id="approve">Approve</button>
  <?php

  // Select all unapproved questions in db 
  $sql = "SELECT question_id, question, DATE_FORMAT(question_date, '%e %b %Y at %H:%i') AS dateattime FROM questions WHERE question_approved='0' ORDER BY question_date DESC";
  $result = mysql_query($sql);
  $myquestions = mysql_fetch_array($result);

  if($myquestions) {
    do {
      $question_id = $myquestions["question_id"];
      $question = $myquestions["question"];
      $dateattime = $myquestions["dateattime"];
      echo "<div class='question'>";
      echo "<span value='$question_id'>";
   echo "<input name='checkbox' type='checkbox' id='checkbox' value='$question_id'>";
      echo "$question - <span class='date'>Asked $dateattime </span>";
      echo "</span>\n";
      echo "<div class='question-controls'><a href='".$_SERVER["PHP_SELF"]."?delete=$question_id' title='Delete this question' class='delete' onclick='return confirm(\"Are you sure you want to delete this question?\")'>Delete</a> | <a href='#'>Edit</a> |";
      echo " <a href='".$_SERVER["PHP_SELF"]."?approve=$question_id' title='Publish this question'>Approve</a></div>";
      echo "</div>";
    } while ($myquestions = mysql_fetch_array($result));
  } else {
    echo "<p>No one has asked a question recently.</p>";
  }
  ?>
 </div>

1 Ответ

1 голос
/ 18 декабря 2009

Вам необходимо изменить элемент 'checkbox', чтобы создать массив значений. Код:

echo "<input name='checkbox[]' type='checkbox' id='checkbox' value='$question_id'>";

После этого вы можете вызывать эту переменную из php-кода (например, используя $ _REQUEST ['checkbox']), и она будет массивом. Таким образом, вы можете перебрать его и удалить эти строки из базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...