У меня есть таблица с флажками, которые я получаю из базы данных:
<?php
$result = mysql_query("SELECT shop_id, name FROM shop") or die(mysql_error());
if(mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_assoc($result))
{
echo '<tr>
<td>
<input type="checkbox" name="identifer[]" value="'.$row['shop_id'].'" /> <br />
</td>
<td>'.ucfirst($row['shop']).'</td>
</tr> ';
}
}
?>
Я хочу сохранить результаты в базе данных:
- Таблица:
places
- Столбцы:
places_id
, book_id
, shop_id
Однако я не могу заставить его работать правильно. В столбце shop_id
я получаю одно и то же число столько раз, сколько отмечены флажками.
Если я использую это:
$identifer = $_POST['identifer'];
if( count( $identifer) > 1)
{
foreach($identifer as $x)
{
$y .= $x.",";
$val = rtrim($y,",");
$q2 = "INSERT INTO places (places_id, book_id, shop_id) VALUES (NULL, '$book_id', '$val')";
$result2 = mysql_query($q2) or die(mysql_query());
}
}
В таблице places
я получаю только одну строку независимо от того, сколько раз флажки установлены.
Так, как правильно это сделать?