Форум на Kuban.ru (http://forums.kuban.ru/)
-   Веб-дизайн и программирование (http://forums.kuban.ru/f1030/)
-   -   как отправлять значение компонента формы checked в обработчик (http://forums.kuban.ru/f1030/kak_otpravlyat-_znachenie_komponenta_formy_checked_v_obrabotchik-3839597.html)

mavrodi 10.03.2013 12:36

как отправлять значение компонента формы checked в обработчик
 
если checkbox выделен галочкой, то в обработчик летит 1, иначе 0

MaxTyT 10.03.2013 14:03

в чем заключается вопрос?

mavrodi 10.03.2013 14:18

1-MaxTyT > я делаю уведомления на email о новых друзьях, сообщениях, комментария. юзер в разделе настройки должен убрать галочки, если не хочет получать уведомления, а если хочет - поставить. вот я и спрашиваю: как сделать, чтобы если юзер убрал галочку в обработчик летело 0, иначе 1. а на странице настроек: если 1 то галка стоит, если нет, то не стоит

mavrodi 10.03.2013 14:28

теперь другая проблема: если ставлю галочку на одном боксе, то после обновления страницы галки стоят на всех, или если с одного убираю - галки убираются со всех

MaxTyT 10.03.2013 15:08

летит не 1, а "on", но разницы нет.
имена у чекбоксов разные?

mavrodi 10.03.2013 15:12

4-MaxTyT > в обработчике я переделываю: если 'on', то 1. имена разные

MaxTyT 10.03.2013 15:15

значит в логике намудрил. покажи этот кусок кода

mavrodi 10.03.2013 15:27

код страницы настроек:
<tr>
<td>Оповещение о новых сообщениях:</td>
<td>
<?php
if($myrow['mail_mess'] == '0')**$a = "checked";**
if($a=="checked")**$b=1;**else{$b=0;**
?>
<input name="new_mess" id="new_mess" class="pass" type="checkbox" <?=$a;?> value="<?=$b;?>">
</td>
</tr>
<tr>
<?php
if($myrow['mail_friend'] == '0')**$c = "checked";**
if($c=="checked")**$bc=1;**else{$bc=0;**
?>
<td>Оповещение о новых друзья:</td>
<td>
<input name="new_friend" id="new_friend" class="pass" type="checkbox" <?=$c;?> value="<?=$bc;?>">
</td>
</tr>
////
код обработчика:
if($_POST['act'] == "checkbox")**
$new_mess = $_POST['new_mess'];
$new_friend = $_POST['new_friend'];

if($new_mess == '1')**$new_mess = "1";**
if($new_friend == '1')**$new_friend = "1";**

$result = mysql_query("UPDATE users SET mail_mess='$new_mess',mail_friend='$new_friend' WHERE id='$id_user'");
if($result == true)**
echo 0; //Изменения сохранены
**
else{
echo 1; //не сохранены
**

**

fanatnascar 10.03.2013 15:48

кони, люди..
проверку надо делать по наличию в POST нужных value или отсутствию. Предустановка checked делается присваиванием checked="checked"

[url]http://htmlbook.ru/html/input/checked[/url]

MaxTyT 10.03.2013 15:50

if($new_mess == '1')**$new_mess = "1";**
if($new_friend == '1')**$new_friend = "1";**

что это? договорились же, что "on" присылает
а еще лишнее в html-коде... у чекбокса не может быть параметра value

fanatnascar 10.03.2013 16:14

9-MaxTyT >[filolog]ептить[/filolog], точно, по значению в checked, совсем старый стал

ars_2007 10.03.2013 20:07

name - new_mess, а в базе - mail_mes.
Мрак такой =))

mavrodi 11.03.2013 02:06

11-Гавайские субтитры > это традиция такая у тебя - в каждом посте поставить свои 5 копеек? лучше поделись полезной информацией: весом своей папки на lamp'e. хотя твоя активность на форуме говорит о wamp'e...

ars_2007 11.03.2013 02:27

12-mavrodi >
какие ещо вампы-лампы? =))
Совсем плох?

ЗЫ
и код у тебя закручен, как мосг джека-потрошытеля =))

mavrodi 11.03.2013 16:29

13-Гавайские субтитры >wamp - Windows Apache MySQL phpMyadmin. lamp - Linux Apache MySQL phpMyadmin

ars_2007 11.03.2013 18:01

14-mavrodi >
а при чом тут phpmyadmin? =)))

mavrodi 11.03.2013 19:20

15-Гавайские субтитры >мне удобнее через phpMyadmin работать с бд, чем через бэш

ars_2007 11.03.2013 19:25

16-mavrodi >
эт понятно.
Я про то, к чему в ЭТОЙ теме phpmyadmin?
Вы чо, в нем отправляете checkbox-ы? =))

mavrodi 11.03.2013 19:52

17-Гавайские субтитры >это уже просто трёп после 11ого коммента...

fanatnascar 11.03.2013 20:36

16-mavrodi >открой navicat

mavrodi 11.03.2013 20:57

19-Фанат NASCAR > сомневаюсь, что он есть под unix


Текущее время: 06:53. Часовой пояс GMT +3.