Флажки Inbox-System для выбора сообщений - PullRequest
0 голосов
/ 28 января 2010

В настоящее время мы внедряем систему входящих сообщений на наш веб-сайт и хотим, чтобы пользователь мог отмечать несколько сообщений входящих сообщений и щелкнуть ссылку Удалить, чтобы массово удалить их.

Каждое входящее сообщение имеет свой собственный идентификатор в базе данных.

Нам нужна помощь, чтобы заставить работать систему флажков. Мы не знаем, с чего начать; должны ли мы дать каждому ID или заполнить какое-то значение с помощью PHP - мы просто не знаем. Любая помощь с благодарностью.

Ответы [ 4 ]

3 голосов
/ 28 января 2010

Вы можете присвоить всем своим флажкам одно и то же имя, оканчивающееся на [], и разные значения, например:

<input type="checkbox" name="deletemessage[]" value="367"/>
<input type="checkbox" name="deletemessage[]" value="394"/>
<input type="checkbox" name="deletemessage[]" value="405"/>

Таким образом, при отправке формы PHP поместит все выбранные значения в массив в пределах $ _POST. Поэтому, если в приведенном выше примере были установлены верхний и нижний флажки, $ _POST ['deletemessage'] будет содержать [367, 405]

1 голос
/ 28 января 2010

Форма xHTML

<input type="checkbox" name="record[]" value="1" />
<input type="checkbox" name="record[]" value="2" />
<input type="checkbox" name="record[]" value="3" />
<input type="checkbox" name="record[]" value="4" />

PHP

<?php

foreach ($_POST['record'] AS $id) {

    $id = (int)$id; // Force to integer (little of security)

    // Delete the record
    mysql_query("DELETE FROM `table` WHERE `id` = {$id}");

}

?>
1 голос
/ 28 января 2010
<input type="checkbox" name="check[]" value=1 />
<input type="checkbox" name="check[]" value=2 />
<input type="checkbox" name="check[]" value=3 />
<input type="checkbox" name="check[]" value=4 />
<input type="checkbox" name="check[]" value=5 />

Затем будет возвращен массив, через который вы можете перейти.

<?php
foreach ($_POST["check"] as $value)
{
echo "message id: $value";
}
?>

Замечание о безопасности. Вы должны убедиться, что идентификатор сообщения связан с пользователем, который пытается удалить сообщение.

0 голосов
/ 28 января 2010

Начните с того, что присвойте всем флажкам одинаковое имя с квадратными брекетами в конце somename[]

и при отправке формы (в виде POST) выполните print_r($_POST)

...