[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Checkbox
Ramzil_Nixon
Написал следующее:

<input name="chin" type="checkbox"> Администратор


Проблема в том что это функция все время возвращает ON.
Метод POST.

И еще вопрос.

Как можно отправить несколько групп пользователей сразу в бд используя подобное chechbox'а.

Цитата
Пишу форум, и дошел до той части, когда создаешь форум, то надо дать привилегии в данном форуме, то есть, группа пользователей которые могут создать тему и т.д. Помогите буду благодарен. Спасибо.


_____________
Миллионы приходят, уходят, не в них счастье. Самым важным на свете всегда будут люди в этой комнате, вот здесь, сейчас...

user posted image
sergeiss
Цитата (Ramzil_Nixon @ 12.04.2014 - 19:22)
Проблема в том что это функция все время возвращает ON.
Метод POST.

Не вижу никакой функции... И задай value для этого инпута. В любом случае показывай код, который у тебя читает полученные данные.
Для начала можешь посмотреть, что у тебя пришло в ПОСТе
echo '<pre>'.print_r( $_POST, 1).'</pre>';


Цитата (Ramzil_Nixon @ 12.04.2014 - 19:22)
Как можно отправить несколько групп пользователей сразу в бд используя подобное chechbox'а.

Не совсем понятно, что ты хочешь получить. Возможно, что тебе нужно дать разными инпутам единое имя в виде массива, задав только разные value этим инпутам
name="boxes[]"


_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Ramzil_Nixon
Цитата (sergeiss @ 12.04.2014 - 15:52)
И задай value для этого инпута. В любом случае показывай код, который у тебя читает полученные данные.
Для начала можешь посмотреть, что у тебя пришло в ПОСТе


Задал value, возвращает теперь то, что написано на value. Не имеет значение поставлена галочка в этом инпуте или нет.

Цитата (sergeiss @ 12.04.2014 - 15:52)
Возможно, что тебе нужно дать разными инпутам единое имя в виде массива, задав только разные value этим инпутам
name="boxes[]"


а вот это не совсем понял.

___________________________________________________________________

Нашел причину из за чего это может быть. Теперь новый вопрос появился.

Через ajax эти checkbox'ы не возможно что ли передавать?

_____________
Миллионы приходят, уходят, не в них счастье. Самым важным на свете всегда будут люди в этой комнате, вот здесь, сейчас...

user posted image
sergeiss
Цитата (Ramzil_Nixon @ 13.04.2014 - 12:44)
Через ajax эти checkbox'ы не возможно что ли передавать?

Ёксель-моксель... Так ты покажи, как ты передаешь! Всё там можно передать, если правильно делать.

Цитата (Ramzil_Nixon @ 13.04.2014 - 12:44)
а вот это не совсем понял.

"Учу гуглить. Недорого." (с)

Заходим в поисковую систему, задаем "php checkbox массив", т.е. те слова, что были использованы, и получаем много инфы.
У меня первая же ссылка дает много чего интересного: http://webhamster.ru/mytetrashare/index/mt...955303dhoocb3dz

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
inpost
Ramzil_Nixon
Почему нельзя? Аякс передаёт данные, значит ты должен на JS проверить, нажат ли был чекбокс.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
nikolaevevge
Попробуй так

<input type="hidden" name="chin" value="0"><input name="chin" type="checkbox" value="1"> Администратор
Ramzil_Nixon
Решил проблему. Спасибо всем.

_____________
Миллионы приходят, уходят, не в них счастье. Самым важным на свете всегда будут люди в этой комнате, вот здесь, сейчас...

user posted image
nikolaevevge
Ramzil_Nixon, так отписался бы как именно решил
Нам же интересно
loganleito
Доброго времени суток!

Ребята, помогите пожалуйста. Уже все перерыл. Понимаю. что просто но не работает!

Проблема такая. Нужно отправить данные чекбокса (галочки которые выброл человек) на емэйл. С тегом radio получилось а вот с галками...Либо последний выбор приходит, либо ничего!
Вот php с обработчиком post:

$pattern = "#^[a-z0-9_-]+@[a-z0-9_-]+\.([a-z0-9]{1,6}\.)?[a-z]{2,6}$#i";

if($_POST){
$error = false;

foreach ($_POST as $key => $value) {
$value = trim($value);
if(array_key_exists($key, $fields) && empty($value)){
$_SESSION['res']['error'] .= "Вы не заполнили поле {$fields[$key]} <br />";
$error = true;
}
}


if(!empty($_POST['email'])){
if(!preg_match($pattern, $_POST['email'])){
$_SESSION['res']['error'] .= "Поле email не соответствует формату <br />";
$error = true;
}
}


if($_POST['captcha'] != $_SESSION['res_captcha']){
$_SESSION['res']['error'] .= "Дан неверный ответ на вопрос <br />";
$error = true;
}

if($_POST['confirm'] != 'on'){
$_SESSION['res']['error'] .= "Вы не подтвердили согласие на публикацию!";
$error = true;
}


if($error){
foreach ($_POST as $key => $value) {
$_SESSION['res'][$key] = trim($value);
}
}
else{
foreach ($_POST as $key => $value) {
if(!array_key_exists($key, $all_fields)) continue;
$value = trim($value);
if(empty($value)) $value = "Поле не заполнено";
$body .= "{$all_fields[$key]}: \r\n{$value}\r\n\r\n";
}



$to = "admin@gmail.com";
$subject = "Заполнена форма на сайте";
$headers = "FROM: " .strtoupper($_SERVER['SERVER_NAME']). "<>\r\n";
$headers .= "Content-type:text/plain; charset=utf-8";
if(mail($to, $subject, $body, $headers)){
$_SESSION['res']['ok'] = "Спасибо, Ваш отзыв принят.";
}else{
$_SESSION['res']['error'] .= "Ошибка при отправке письма!";
}
}


header("Location: {$_SERVER['PHP_SELF']}");
exit;
}

$a = mt_rand(1, 10);
$b = mt_rand(1, 10);
$_SESSION['res_captcha'] = $a + $b;


И html

<p>

<fieldset
id="shest" style="width: 200px;">
<legend><input
type="checkbox"> Всё</legend>
<input
type="checkbox" name="food" value="Завтрак" checked >Завтрак
<input type="checkbox" name="food" value="Обед" >Обед
<input type="checkbox" name="food" value="Ужин" >Ужин
</fieldset>

<script>
var
main = document.querySelector('#shest legend [type="checkbox"]'),
all = document.querySelectorAll('#shest > [type="checkbox"]');

for(var i=0; i<all.length; i++) { // 1 и 2 пункт задачи
all[i].onclick = function() {
var allChecked = document.querySelectorAll('#shest > [type="checkbox"]:checked').length;
main.checked = allChecked == all.length;
main.indeterminate = allChecked > 0 && allChecked < all.length;
}
}


main.onclick = function() { // 3
for(var i=0; i<all.length; i++) {
all[i].checked = this.checked;

}
}

</script>
</p>



На скрипт не смотрите - это чтобы сразу всё выбрать(рабочий)

Спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.