У меня есть форма, где я могу подписаться и отписаться пользователей на бюллетень, то «форма» сама по себе выглядит следующим образом:Динамически создаваемые радио кнопки вопрос
Флажки создаются динамически с помощью этого кода:
<?php
$i = 0;
while($objResult1 = mysql_fetch_array($objQuery1))
{
$i++;
?>
<tr>
<td><div align="center"><?=$objResult1["ID"];?><input type="hidden" name="mailid[]" value="<?=$objResult1["ID"];?>"> </div></td>
<td><div align="center"><?=$objResult1["Titel"];?> </div></td>
<td><div align="center"><input type="checkbox" name="sub[]" value="10"> </div></td>
<td><div align="center"><input type="checkbox" name="sub[]" value="90"> </div></td>
</tr>
<?php
}
?>
Я использую значение в другом сценарии, где я вставить их в базу данных, как это:
foreach($_POST['sub'] as $i=>$s){
$sql = mysql_query("INSERT INTO Subscriptions (Klant_ID, Mail_ID, Status, Datum) VALUES ('".$Klant_ID."', '".$_POST['mailid'][$i]."', '".$s."', '".$Datum."')") or die(mysql_error());
}
Проблема состоит в том, что можно выбрать оба флажка в каждой строке (в основном я могу выбрать все флажки). Когда я устанавливаю тип ввода на «радио», я могу выбрать только 1 из 6 переключателей. Есть ли способ заставить это работать, поэтому я могу выбрать 1 радиокнопку в каждой строке? Если у вас есть какие-либо вопросы или вам нужна дополнительная информация, просто спросите в комментариях. Thnx заранее!
ПРИМЕЧАНИЕ: Не всегда 3 строки, строки динамически создаются в зависимости от количества строк в базе данных.
EDIT: Я получил его на работу с этим кодом, благодаря Jueecy's answer:
<?php for ($i = 0; $objResult1 = mysql_fetch_array($objQuery1); $i++) : ?>
<tr>
<td><div align="center"><?=$objResult1["ID"];?><input type="hidden" name="mailid[]" value="<?=$objResult1["ID"];?>"> </div></td>
<td><div align="center"><?=$objResult1["Titel"];?> </div></td>
<td><div align="center"><input type="radio" name="sub[<?php echo $i; ?>]" value="10"> </div></td>
<td><div align="center"><input type="radio" name="sub[<?php echo $i; ?>]" value="90"> </div></td>
<tr>
<?php endfor; ?>
У меня есть только 1 другая проблема сейчас, строка с идентификатором 1 не показывает больше. Кто-нибудь знает, как это исправить? ^^
вместо этого вы можете 'implode' размещен массив и вставить в базу данных и на использовании дисплея' explode' для отображения Это. –
@DipeshParmar, может быть, вы имели в виду 'implode'? – Shoe
@Jueecy yes..gosh не может даже набрать сейчас. –