php mysql更新表选项列表框
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php mysql更新表选项列表框相关的知识,希望对你有一定的参考价值。
我正在尝试使用选项选择框中选择的值更新我的表,但是当我单击保存时它不会更新所选行。 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> <input name='checkbox[]' type='checkbox' id='checkbox[]' value='".$rowPanel["id"]."' </td>
<td> <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> ".$rowPanel["Location"]." </td><td> ".$rowPanel["Coding"]." </td><td> ".$rowPanel["ProtDesc"]." </td><td> ".$rowPanel["GMAF"]." </td><td> ".$rowPanel["Coverage"]." </td><td> ".$rowPanel["Freq"]." </td></tr>";
}
?>
<input type="submit" name="sendEcht" value="Sauvegarder" />
</form>
<?php
mysqli_close($conn);
?>
在我的savevariantclass.php中我试图通过这样做得到我的身份:
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
答案
我终于设法解决了我的问题。要获取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/>';
}
以上是关于php mysql更新表选项列表框的主要内容,如果未能解决你的问题,请参考以下文章
如何将下拉选择框列表中用户选择的选项的值存储到 mysql 数据库中?