Поместить данные флажка в текстовое поле - PullRequest
0 голосов
/ 10 января 2010

Есть ли способ установить несколько флажков и автоматически добавить связанный идентификатор / имя в не редактируемое текстовое поле / текстовое поле?

Согласно одному из предложений ... Я расширяю и уточняю.

У меня есть несколько флажков, которые я хочу сохранить в одном и том же поле БД ... одновременно. Итак, поскольку я начинающий программист в области php / sql (и продвинутых языков), я решил, что самый простой и быстрый способ - это вставить идентификатор флажка в одно текстовое поле, а затем извлечь эту динамическую информацию из текстового поля. в поле db, поскольку эта информация должна соответствовать другим текстовым полям в одной транзакции. Итак:

Имя: текстовое поле
ID #: текстовое поле
Другая информация: текстовое поле
Проверка 1: X
Проверка 2: X
Check3:

и у всех там были бы строки ... помогите ... я в замешательстве.

Ответы [ 4 ]

0 голосов
/ 10 января 2010

Пока не могу комментировать, но в качестве ответа на ваш комментарий "Пробовал так, и это ...", Аарон, вы неправильно используете команду print_r.print_r предназначен для выгрузки данных / структуры переменных массива в текстовом формате, вы НЕ можете выгрузить этот текст в раздел value = "" формы ввода html.То, что вы действительно делаете, делая это, в конечном итоге будет выглядеть так в сгенерированном html:

<input name="Extrasfield" type="text" id="extras" value='Array
(
    0 => 'adam',
    1 => 'nick',
    2 => 'simon'
 )' disabled>

Если вы хотите, чтобы текстовое поле содержало что-то вроде «Адам, Ник, Саймон»,заменить print_r чем-то вроде этого:

 implode(', ', $Extras)

, где бит ',' - это разделитель, который вы хотите использовать.

0 голосов
/ 10 января 2010

Если у вас есть форма с несколькими флажками:

<input type="checkbox" name="people[]" value="adam" />
<input type="checkbox" name="people[]" value="nick" />
<input type="checkbox" name="people[]" value="simon" />

Добавление [] после имени помещает все значения в массив php. Вы можете получить доступ к данным следующим образом:

$people = $_POST['people'];
print_r($people); // prints array('adam','nick','simon');

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

0 голосов
/ 10 января 2010

Как показывает ответ выше, используйте JQuery. Вот некоторый полезный код,

$("#id :checkbox").click(function() { 

    var values = [];

    $('#id :checked').each(function() {
        values.push($(this).val());
    });

    $("#id").val(values)
});

Удачи!

0 голосов
/ 10 января 2010

Конечно. Вы можете использовать jQuery.each для циклического обхода флажков и добавления id / nme в текстовое поле / поле.

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