2015-11-21 4 views
0

Мне нужна помощь с программой php/sql, ссылаясь на флажки. В настоящее время у меня есть это:SQL Checkbox с несколькими значениями

foreach($result as $row){ 
    $device_serialnum = $row['device_serialnum']; 
    $device_manufacturer = $row['device_manufacturer']; 
    $description = $row['description']; 
    echo("<input type=\"checkbox\" name = \"device_serialnum[]\" value=\"$device_serialnum\"> $device_serialnum : $device_manufacturer : $description<br/>"); 
} 

Где значения device_serialnum, device_manufacturer и описание происходят из SQL запроса сделанного ранее.

Что я имел в виду, для каждого флажка были два значения (device_serialnum, device_manufacturer), потому что это два основных ключа, которые мне нужно сохранить, чтобы выполнить следующий запрос.

Есть ли простой способ для этого, следуя схеме моего предыдущего кода?

Спасибо заранее,

С уважением

Blackfing

+0

Почему вы не делаете массив, содержащий первичные ключи, которые вы хотите от каждой строки, и флажок получает значение int (1,2,3,4 ...), а затем возвращает первичные ключи просто сделайте что-то вроде массива [checbox.value] – ivan

+0

Супер простым решением было бы поставить оба варианта es в атрибуте value флажка отдельно от какого-либо символа (ов), который никогда не будет в любой переменной. Затем в скрипте, который обрабатывает значения, взорвать значение на этом разделителе. – Terminus

ответ

1

Флажок может иметь только одно значение атрибута. Но вы можете поместить несколько значений в этот атрибут, используя somem вид из разделителей, как «|»:

echo("<input type=\"checkbox\" name = \"device_specs[]\" value=\"$device_serialnum|$device_manufacturer\"> $device_serialnum : $device_manufacturer : $description<br/>"); 

При обработке значений формы вы должны будете снова разделить Thos значения:

list($device_serialnum,$device_manufacturer) = explode('|',$_POST['device_specs']); 

Просто идея ...

+0

Спасибо! Я попробую это, и я думаю, что это может решить мою проблему. – Blackfing

Смежные вопросы