Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: html checkbox не получаеться передать в скрипт выбраное

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
MBmusic
Отправлено: 10 Мая, 2013 - 13:50:53
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




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

вот мой код:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP while($row_select_user_fac_input = mysql_fetch_assoc($this->select_user_fac_checkbox)) { ?>
  3. <input type="checkbox" name="faculty_select" value="<?=$row_select_user_fac_input['name']?>"> <?=$row_select_user_fac_input['name']?><Br>
  4. <?PHP } ?>
  5.  
  6.  
  7. if(isset($_POST['faculty_select'])) {
  8.         echo $_POST['faculty_select'];
  9. }
  10.  
 
 Top
LIME
Отправлено: 10 Мая, 2013 - 13:53:20
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




name="faculty_select[]"
 
 Top
MBmusic
Отправлено: 10 Мая, 2013 - 14:01:52
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




вставил var_dump($_POST['faculty_select']); там где мы нажимаем на кнопку, выдает мне newstring(3) и + то что мы выбрали в чекбоксе
 
 Top
KingStar
Отправлено: 10 Мая, 2013 - 14:06:46
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)




имена для всех кнопок одни, вот они и перебивают друг друга, имена задай вида

CODE (htmlphp):
скопировать код в буфер обмена
  1. name="faculty_select[]"


далее получаешь выбранные значения ввиде массива

CODE (htmlphp):
скопировать код в буфер обмена
  1. var_dump($_POST['faculty_select']);

(Добавление)
ну или так

PHP:
скопировать код в буфер обмена
  1. if(isset($_POST['faculty_select'])) {
  2.         echo implode(" ", $_POST['faculty_select']);
  3. }


-----
То что программа работает, не означает что она написана правильно!
 
 Top
MBmusic
Отправлено: 10 Мая, 2013 - 14:15:23
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




оо) спасибо......а еще такой вопрос......а вот как теперь мне сделать запись в базу того что я выбрал......ну в смысле я вот из чекбокса выбрал два поля, и теперь мне нужно записать эти поля в две строки в базе, каждое поле в новую строку......своего рода типо два подряд INSERT в базу......а вот если мы выбрали одно поле то тогда один инсерт....
 
 Top
KingStar
Отправлено: 10 Мая, 2013 - 14:22:09
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)




PHP:
скопировать код в буфер обмена
  1. $DBInsert = array();
  2.  
  3. foreach($_POST['faculty_select'] as $value)
  4. {
  5.       $DBInsert[] = "(NULL, '".$value."')";
  6. }
  7.  
  8. $strInsert = "INSERT INTO `table_name` (`id`, `faculty_select`) VALUES ".implode(", ", $DBInsert);


полей твоих не знаю, поэтому выдумал автоинкремент id


-----
То что программа работает, не означает что она написана правильно!
 
 Top
MBmusic
Отправлено: 10 Мая, 2013 - 14:30:40
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




выдает ошибку You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Електронних Інформаційних Технологій'), (NULL,' at line 1

вот то что я написал:
PHP:
скопировать код в буфер обмена
  1.  
  2. $DBInsert = array();
  3.      
  4. foreach($_POST['faculty_select'] as $value)
  5. {
  6.         $DBInsert[] = "(NULL, '".$value."')";
  7. }
  8.      
  9. //$strInsert = "INSERT INTO `table_name` (`id`, `faculty_select`) VALUES ".implode(", ", $DBInsert);
  10. $op = implode(", ", $DBInsert);
  11. $this->database->query("INSERT INTO faculty_teacher (faculty, user_id) VALUES ('{$op}', 3)") or die(mysql_error());
  12.  
 
 Top
KingStar
Отправлено: 10 Мая, 2013 - 14:33:22
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


Помог: 69 раз(а)




PHP:
скопировать код в буфер обмена
  1. $DBInsert = array();
  2.      
  3. foreach($_POST['faculty_select'] as $value)
  4. {
  5.         $DBInsert[] = "('".$value."', 3)";
  6. }
  7.  
  8. $op = implode(", ", $DBInsert);
  9. $this->database->query("INSERT INTO faculty_teacher (faculty, user_id) VALUES ".$op) or die(mysql_error());


-----
То что программа работает, не означает что она написана правильно!
 
 Top
MBmusic
Отправлено: 10 Мая, 2013 - 14:37:45
Post Id


Посетитель


Покинул форум
Сообщений всего: 481
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




спасибо! заработало
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB