Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с checkbox, Не понимаю, при проверке выдает тока 1 
:(
    Опции темы
InfMag
Дата 28.1.2005, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Я проверяю цыклом на наличие value из checkbox, но он находит тока один из них.
Код

<?php
if (isset($_POST['del']) && isset($_POST['dels'])) {
$fp = fopen("../data/users.dat","w+");
 for ($i=0; $i<sizeof($file_users_counter); $i++) {
  if ($_POST['dels']==$i) {
   $file_users_counter[$i] = "";
  }
 }
 for ($i=0; $i<sizeof($file_users_counter); $i++) {
  fwrite($fp,$file_users_counter[$i]);
 }
fclose($fp);
}
?>

Тока не нада мне рассказывать как проще написать, а помогите ответить на заданый вопрос.
PM   Вверх
Mal Hack
Дата 28.1.2005, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



В скрипте будут доступны только выбранные чекбоксы.

PM ICQ   Вверх
InfMag
Дата 28.1.2005, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Цитата(Mal @ 28.1.2005, 21:19)
В скрипте будут доступны только выбранные чекбоксы.

Всмысле? Не понял... Это как? Яж говорю, что он находит тока один... Я пишу:
Код

<input type=checkbox name="dels" value="0" class=checks>
<input type=checkbox name="dels" value="1" class=checks>
<input type=checkbox name="dels" value="2" class=checks>
<input type=checkbox name="dels" value="3" class=checks>
<input type=checkbox name="dels" value="4" class=checks>
<input type=checkbox name="dels" value="5" class=checks>

Выделяю допустим 2, 4 и 5, а он выполнит действие тока на 2-ой.
PM   Вверх
InfMag
Дата 28.1.2005, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Ну что-же никто не решал такую проблему.
PM   Вверх
penizillin
Дата 28.1.2005, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 10.11.2004

Репутация: 8
Всего: 9



если вы всем checkbox'ам даете одно и тоже имя, что же вы ожидаете?
а вообще, mal hack ответил на ваш вопрос.
PM MAIL ICQ   Вверх
InfMag
Дата 28.1.2005, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Интересно, но как мне делать это цыклом? Я имею виду имена... Я ведь не знаю количество их точно, их может быть 10, а может и стольник. smile
PM   Вверх
penizillin
Дата 28.1.2005, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 10.11.2004

Репутация: 8
Всего: 9



name="dels[]"
PM MAIL ICQ   Вверх
InfMag
Дата 28.1.2005, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Чувак! Ты меня спас... Как я сам не вспомнил...
Добавлено @ 19:29
А value оставлять как были или они не нужны?
PM   Вверх
penizillin
Дата 28.1.2005, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 10.11.2004

Репутация: 8
Всего: 9



зависит от того, что вам нужно.
PM MAIL ICQ   Вверх
InfMag
Дата 28.1.2005, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Блин, я вот че-то попробовал, но не работает вобще... Можно пример? smile
Добавлено @ 19:38
Мне нада просто проверить нажат ли один или несколько определенных чекбоксов.
PM   Вверх
InfMag
Дата 28.1.2005, 20:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Млять, у меня уже башка болит ждать тут ответа. Раньше так бурно их получал, а щас хоть час сиди.
PM   Вверх
Mal Hack
Дата 28.1.2005, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(InfMag @ 28.1.2005, 19:32)
или несколько определенных чекбоксов.

В таком случае либо даем чекбоксам разныен имена, либо жестко прописываем ch[1] , ch[2], ch[3] и т.д.

InfMag
Без мата, пожалуйста.
PM ICQ   Вверх
InfMag
Дата 28.1.2005, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



smile
Как я могу писать строго? Как мне потом проверять пост имена?
PM   Вверх
Irokez
Дата 28.1.2005, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



по моему легче назвать чекбоксы по-другому:
Код

<input type=checkbox name="dels_0" class=checks>
<input type=checkbox name="dels_1" class=checks>
<input type=checkbox name="dels_2" class=checks>
<input type=checkbox name="dels_3" class=checks>
<input type=checkbox name="dels_4" class=checks>
<input type=checkbox name="dels_5" class=checks>

PM   Вверх
InfMag
Дата 28.1.2005, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Irokez, да не... Это то я усвоил, а вот имена будут нормано проверяться, если писать так?:
Код

if ($_POST['dels_'.$i]) {echo "ok...";}


Это сообщение отредактировал(а) InfMag - 28.1.2005, 20:59
PM   Вверх
Irokez
Дата 28.1.2005, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



да будут проверяться нормально, даже лучше так:
Код

if (isset($_POST['dels_'.$i])) {echo "ok...";}

PM   Вверх
Mal Hack
Дата 28.1.2005, 22:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Лучше так:
Код

<input type=checkbox name="dels[0]" class=checks>
<input type=checkbox name="dels[1]" class=checks>
<input type=checkbox name="dels[2]" class=checks>
<input type=checkbox name="dels[3]" class=checks>
<input type=checkbox name="dels[4]" class=checks>
<input type=checkbox name="dels[5]" class=checks>

Если что легче править будет.
PM ICQ   Вверх
Irokez
Дата 28.1.2005, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



только если будет ява скрипт, будут траблы ...
PM   Вверх
Mal Hack
Дата 28.1.2005, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Цитата(Irokez @ 28.1.2005, 22:45)
только если будет ява скрипт, будут траблы ...

При чем жу тут JavaScript?
ИМХО, но вроде как JavaScript должна их тоже как массив воспринять? Или я ошибаюсь?
PM ICQ   Вверх
Irokez
Дата 28.1.2005, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 22
Всего: 53



попробуй:
Код

<form name=test>
<input type=checkbox name="dels[0]" class=checks value='hello'>
<input type=checkbox name="dels[1]" class=checks>
<input type=checkbox name="dels[2]" class=checks>
<input type=checkbox name="dels[3]" class=checks>
<input type=checkbox name="dels[4]" class=checks>
<input type=checkbox name="dels[5]" class=checks>
</form>
<input type=button onClick="alert(document.test.dels[0].value)">

PM   Вверх
Ринат
Дата 6.4.2005, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: нет
Всего: нет



просто в форме ставишь
<input name="del[]" type="checkbox" value="1">
<input name="del[]" type="checkbox" value="2">
<input name="del[]" type="checkbox" value="3">
то есть нужен массив просто, что неясно пиши
PM MAIL   Вверх
Хрипа
Дата 15.4.2007, 17:09 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 11.12.2006

Репутация: -6
Всего: нет



Код

<input type=checkbox name="dels[]" value="0"  class=checks>
<input type=checkbox name="dels[]" value="1"  class=checks>
<input type=checkbox name="dels[]" value="2"  class=checks>
<input type=checkbox name="dels[]" value="3"  class=checks>
<input type=checkbox name="dels[]" value="4"  class=checks>
<input type=checkbox name="dels[]" value="5" class=checks>
$x = $_POST["dels"];
$x[0] будет содержать ноль если чекбокс отмечен.


Это сообщение отредактировал(а) PARROT - 9.5.2007, 21:31
--------------------
<Вырезана, как не соответствующая правилам форума >
PM MAIL   Вверх
CyClon
Дата 15.4.2007, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

Репутация: 3
Всего: 4



Цитата
<input type=checkbox name="dels" value="5" class=checks>


Если чекбокс отмечен, то в скрипту будет доступна переменная dels со значением 5.
Если чекбокс не отмечен, переменная dels существовать не будет.

Многие думаю, что если чекбокс не отмечен, то переменная dels будет иметь значение 0. Это не так, ее вообще не будет.

Добавлено через 1 минуту и 23 секунды
Код
<input type=checkbox name="dels[]" value="0"  class=checks>
<input type=checkbox name="dels[]" value="1"  class=checks>
<input type=checkbox name="dels[]" value="2"  class=checks>
<input type=checkbox name="dels[]" value="3"  class=checks>
<input type=checkbox name="dels[]" value="4"  class=checks>
<input type=checkbox name="dels[]" value="5" class=checks>


В скрипте можно вывести количество отмеченных чекбоксов:

Код
echo count($_POST['dels']);


Добавлено через 4 минуты и 15 секунд
Проверка на отмеченность чекбокса:

Код
<input type="checkbox" name="checkbox1" value="ON">


Код
echo (isset($_POST['checkbox1']) && $_POST['checkbox1'] == 'ON') ? 'Отмечен' : 'Не отмечен';



--------------------
user posted image
PM   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0705 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.