while($myrow5=mysql_fetch_array($result5))
{
echo "
<input name=\"delete\" type=\"checkbox\" value=\"$myrow5[email]\" />
$myrow5[email]
<a href=''>Отправить email</a><Br>
";
}
Спустя 5 минут, 27 секунд (2.05.2010 - 10:26) Lenarfate написал(а):
сначала проверяешь, нажата ли кнопка Удалить, если да - делаешь запрос на удаление. Далее пишешь непосредственно сам вывод из базы с циклами и тп
Спустя 2 минуты, 6 секунд (2.05.2010 - 10:28) Lenarfate написал(а):
сам запрос на удаление может выглядеть примерно так
где $checkboxName - имя самого чекбокса
на выводе примерно так
"DELETE FROM `table`
WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .")"
где $checkboxName - имя самого чекбокса
на выводе примерно так
<input type="checkbox" name="checkboxName[]" />
Спустя 7 минут, 39 секунд (2.05.2010 - 10:36) major28 написал(а):
чето я не понял) объясни пожалуйста подробнее? Вот смотри как мне сделать чтобы обработчику посылался уникальная переменная checkbox? А то у меня получается посылается всегда одна и таже переменная $delete.
Спустя 7 минут, 19 секунд (2.05.2010 - 10:43) Lenarfate написал(а):
ты передаешь в запрос массив данных из выбранных чекбоксов.
Цитата |
<input type="checkbox" name="checkboxName[]" /> |
видишь скобки в имени? вот это переменная, которая пишется в массив. и не забудь инициализировать массив. что-то типа
$checkboxName = !empty($_POST['checkboxName']) ? $_POST['checkboxName'] : array();
Спустя 2 минуты, 53 секунды (2.05.2010 - 10:46) Lenarfate написал(а):
да и значением чекбоксу передай id из базы. к примеру, типа такого:
<input type="checkbox" name="checkboxName[]" value="<?php print $myrow['id'] ?>"/>
Спустя 6 минут, 37 секунд (2.05.2010 - 10:53) major28 написал(а):
Код выбора юзеров для удаления
Код обработчика
я правильно понял? этот код будет работать?
while($myrow5=mysql_fetch_array($result5))
{
echo "
<input name=\"checkboxName[]\" type=\"checkbox\" value=\"$myrow5[id]\" />
$myrow5[email]
";
}
echo "<input name=\"all_delete\" type=\"submit\" value=\"Удалить отмеченных\" />";
Код обработчика
$checkboxName = !empty($_POST['checkboxName']) ? $_POST['checkboxName'] : array();
DELETE FROM `table` WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .")
я правильно понял? этот код будет работать?
Спустя 6 минут, 19 секунд (2.05.2010 - 10:59) Lenarfate написал(а):
нет не будет
во первых, имена в $myrow заключай в кавычки так

во первых, имена в $myrow заключай в кавычки так
Цитата |
$myrow['id'] |
,
во вторых, где твой запрос из базы на выборку?
в третьих,
во вторых, где твой запрос из базы на выборку?
в третьих,
Цитата |
DELETE FROM `table` WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .") |
- это тоже запрос!
удаление примерно так оформить можно
я тебе привожу примеры, а не готовые исчерпывающие коды.
удаление примерно так оформить можно
if($all_delete)
{
$result = mysql_query("DELETE FROM `table` WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .")");
}
я тебе привожу примеры, а не готовые исчерпывающие коды.
Спустя 2 минуты, 34 секунды (2.05.2010 - 11:02) major28 написал(а):
дело в том что я не могу понять логику работы скрипта......иначе бы я смог написать скрипт(((((((((((((((объясни подробнее че за массив для чего он и что он передает и как в дальнейшем работает? Буду благодарен от всей души)
Спустя 8 минут, 29 секунд (2.05.2010 - 11:10) Lenarfate написал(а):
1. для начала должны быть инициализованы переменные
2. нужно составить запрос на удаление при нажатии сабмита -
если(нажата) то {запрос на удаление}
3. далее делаешь выборку из базы
4. далее циклом выводишь и все
вот тебе и весь принцип
2. нужно составить запрос на удаление при нажатии сабмита -
если(нажата) то {запрос на удаление}
3. далее делаешь выборку из базы
4. далее циклом выводишь и все
вот тебе и весь принцип
Спустя 1 минута, 3 секунды (2.05.2010 - 11:11) Lenarfate написал(а):
если ты не знаешь, что такое массив - прошу
Спустя 27 минут, 41 секунда (2.05.2010 - 11:39) major28 написал(а):
ааааааааааааа не понимаю ни черта((((((((((((((((((
допустим я передал обработчику
массив
checkboxName[0]=1;
checkboxName[1]=2;
checkboxName[2]=3;
мне не понятна строка
затем непонятно
(((((((((((((
допустим я передал обработчику
массив
checkboxName[0]=1;
checkboxName[1]=2;
checkboxName[2]=3;
мне не понятна строка
$checkboxName = !empty($_POST['checkboxName']) ? $_POST['checkboxName'] : array();
затем непонятно
WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .")
(((((((((((((
Спустя 6 минут, 9 секунд (2.05.2010 - 11:45) Lenarfate написал(а):
Цитата |
$checkboxName = !empty($_POST['checkboxName']) ? $_POST['checkboxName'] : array(); |
тернарный оператор, альтернатива if'у.
можно записать так:
if(!empty($_POST['checkboxName']))
$checkboxName = $_POST['checkboxName'];
else
$checkboxName = array();
Цитата |
затем непонятно WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .") |
гугли на функцию implode и оператор sql IN
и покажи уже свой запрос на выборку!
Спустя 3 минуты, 23 секунды (2.05.2010 - 11:48) major28 написал(а):
какую выборку мне нужно сделать?
Спустя 2 минуты, 1 секунда (2.05.2010 - 11:50) Lenarfate написал(а):
откуда у тебя вот это??
Цитата |
while($myrow5=mysql_fetch_array($result5)) { echo " <input name=\"delete\" type=\"checkbox\" value=\"$myrow5[email]\" /> $myrow5[email] <a href=''>Отправить email</a><Br> "; } |
откуда $result5??
Спустя 1 минута, 30 секунд (2.05.2010 - 11:52) major28 написал(а):
вот отсюда
$result5=mysql_query("SELECT * from user",$db);
$myrow5=mysql_fetch_array($result5);
mysql_data_seek($result5, "0");
Спустя 3 минуты, 19 секунд (2.05.2010 - 11:55) Lenarfate написал(а):
ну и все, а что еще не понятно, я все разложил.думай
Спустя 12 минут, 57 секунд (2.05.2010 - 12:08) major28 написал(а):
if(!empty($_POST['checkboxName']))
$checkboxName = $_POST['checkboxName'];
else
$checkboxName = array();
если нет переменной $_POST['checkboxName'] то в переменную $checkboxName присваиваю $_POST['checkboxName'] иначе этой переменной присваиваю пустой массив.
Не понимаю что это и для чего это? зачем пустой массив?
Спустя 3 минуты, 26 секунд (2.05.2010 - 12:12) major28 написал(а):
блин я конечно понимаю что ты не обязан мне объяснять, но когда человек не понимает можно же ему объянить доступно вместо того чтобы кидать много постов где куча непонятного кОда. Просто когда я сам помогаю кому либо всегда ориентируюсь на знание юзера. ((((
Спустя 2 минуты, 41 секунда (2.05.2010 - 12:14) Lenarfate написал(а):
Спустя 3 минуты, 23 секунды (2.05.2010 - 12:18) major28 написал(а):
ааааааа блин ну ты меня не понимаешь...........не суть в то м что я не знал альтернативу конструкции if-else. Я не понимаю что нам каждый кусок кода дает на деле?
Спустя 4 минуты, 40 секунд (2.05.2010 - 12:22) Lenarfate написал(а):
чтоб понимал, объясняй предельно точно.
а массив там для того, чтобы складывать в него выбранные значения из чекбокса.
по сути, весь рабочий код уже перед тобой. осталось только собрать все вместе
а массив там для того, чтобы складывать в него выбранные значения из чекбокса.
по сути, весь рабочий код уже перед тобой. осталось только собрать все вместе
Спустя 3 минуты, 56 секунд (2.05.2010 - 12:26) major28 написал(а):
if(!empty($_POST['checkboxName']))
$checkboxName = $_POST['checkboxName'];
else
$checkboxName = array();
объяни пожалуйста словами что и как тут происходит?
Спустя 9 минут, 30 секунд (2.05.2010 - 12:36) Lenarfate написал(а):
уже объяснил
Спустя 24 минуты, 36 секунд (2.05.2010 - 13:00) major28 написал(а):
$result5=mysql_query("SELECT * from user",$db);
$myrow5=mysql_fetch_array($result5);
mysql_data_seek($result5, "0");
while($myrow5=mysql_fetch_array($result5))
{
echo "
<input name=\"delete\" type=\"checkbox\" value=\"$myrow5[email]\" />
$myrow5[email]
<a href=''>Отправить email</a><Br>
";
}
код обработчика
if(!empty($_POST['checkboxName']))
$checkboxName = $_POST['checkboxName'];
else
$checkboxName = array();
if($all_delete)
{
$result = mysql_query("DELETE FROM `table` WHERE `id` IN (". implode(', ', array_map('intval', $checkboxName)) .")");
}
будет работать?
Спустя 5 минут, 26 секунд (2.05.2010 - 13:06) Lenarfate написал(а):
пробуй