php mysql Обновление списка опций таблицы

0

Я пытаюсь обновить таблицу со значениями, выбранными в поле выбора опции, но при нажатии кнопки "Сохранить" она не обновляет выбранную строку. id является основным ключом моей таблицы. Знаете ли вы, что я делаю неправильно?

dovarclass.php

<form class="rnd5" action="SaveClassVariant.php" method="post" name="import" id="import">
<?php
    $Query='SELECT id,Location,'Coding', 'Amino Acid Change' AS ProtDesc,GMAF, 'Coverage', '% Frequency' AS Freq FROM mytable';
    $QueryPerform=mysqli_query($conn,$Query) or die(mysqli_error($conn));
     while($rowPanel =  mysqli_fetch_assoc($QueryPerform)) {
          $id = $rowPanel["id"];
        echo "<tr><td>&nbsp;<input name='checkbox[]' type='checkbox' id='checkbox[]' value='".$rowPanel["id"]."'&nbsp;</td>
        <td>&nbsp;<select name='list[$id]' id='list[]' size='4' multiple='multiple'>
        <option value='Classe 1'>Classe 1</option>
        <option value='Classe 2'>Classe 2</option>
        <option value='Classe 3'>Classe 3</option>
        <option value='Classe 4'>Classe 4</option>
        <option value='Classe 5a'>Classe 5a</option>
        <option value='Classe 5b'>Classe 5b</option>
        </select>
        </td>
        <td>&nbsp;".$rowPanel["Location"]."&nbsp;</td><td>&nbsp;".$rowPanel["Coding"]."&nbsp;</td><td>&nbsp;".$rowPanel["ProtDesc"]."&nbsp;</td><td>&nbsp;".$rowPanel["GMAF"]."&nbsp;</td><td>&nbsp;".$rowPanel["Coverage"]."&nbsp;</td><td>&nbsp;".$rowPanel["Freq"]."&nbsp;</td></tr>";
        }
?>
<input type="submit" name="sendEcht" value="Sauvegarder" />
</form>
<?php
mysqli_close($conn);
?>

в моем файле savevariantclass.php Я пытаюсь получить свой id, выполнив это:

if($_POST){

$VariantClass = $_POST['list'];
foreach(array_values($VariantClass) as $key =>$value )
{
$j=$key+1;
echo $j;
$UpdateVariantClass='UPDATE mytable SET VarClass="'.$value.'" where id='.$j.'';
mysqli_query($conn,$UpdateVariantClass) or die(mysqli_error($conn));
}
}//end of $_POST
Теги:
drop-down-menu
primary-key
option

1 ответ

0
Лучший ответ

Наконец-то мне удалось решить мою проблему. Чтобы получить id, я использую array_search.

$class=$_POST['list'];

foreach ($class as $value) {

$k = array_search($value,$class);
$sql='UPDATE mytable SET VarClass='.$value.' where id='.$k.'';
echo $sql.'<br/>';

}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню