我有一个返回Name,Surname和Choice的mysql查询。 对于返回的每一行,我有一个输入选择(同意/不同意/可能/无)
我想在" advice"中插入所有输入选择的值(返回的每一行一个)到我的数据库中。字段
mysql表:名称,姓氏,选择,建议
我设法获得了这些值,但是当我尝试将它们插入到建议字段中时,如果我返回了3行(每行一条建议),则为每一行存储所有三个建议,它应该只有一个。
这是我有sql查询结果的部分,每个返回的行都有一个输入选择:
while( $result = mysql_fetch_object( $requete ) )
{
?>
<table border="1" align="center">
<tr valign="middle" align="center">
<td width="400"><?php echo "$result->NomEtud"?> </td>
<td width="400"><?php echo "$result->PrenomEtud"?> </td>
<td width="400"><?php echo "$result->filieres"?> </td>
<td width="100">
<form method="post" action="validationavis2.php">
<select name="Avis[]" id="state_id" >
<option name="Avis[]" value="Très Favorable">Très Favorable</option>
<option name="Avis[]" value="Favorable">Favorable</option>
<option name="Avis[]" value="Défavorable">Défavorable</option>
<option name="Avis[]" value="Sans Opinion">Sans Opinion</option>
</select>
<input type="hidden" name="NomEtud" value="<?php echo($NomEtud) ;?>"/>
<input type="hidden" name="PrenomEtud" value="<?php echo($PrenomEtud) ;?>"/>
<input type="hidden" name="id" value="<?php echo($id) ;?>"/>
<input type="hidden" name="filieres" value="<?php echo($filieres) ;?>"/>
<input type="hidden" name="idvoeux[]" value="<?php echo($idvoeux) ;?>"/>
</table>
<?php
}//fin if
?>
<br><br><br>
<center><input type="submit" name="submit"></button></center>
</form>
&#13;
现在我有sql查询的页面插入输入值的选择:
<?php
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "choices" ) ;
//récupération des valeurs des champs:
//nom de la matiere:
$Avis = $_POST['Avis'] ;
$NomEtud = $_POST['NomEtud'] ;
$PrenomEtud = $_POST['PrenomEtud'] ;
$id = $_POST['id'] ;
$filieres = $_POST['filieres'] ;
$idvoeux = $_POST['idvoeux'] ;
$var = "";
for ($i=0;$i<sizeof($Avis);$i++) {
$var .= "".$Avis[$i]."";
echo $Avis[$i];
$sql="UPDATE voeux inner join choixfilieres on voeux.filieres=choixfilieres.filieresprof
SET AVIS='".$var."'
WHERE id='" . $id. "'
";
//exécution de la requête SQL:
$requete = mysql_query($sql) or die( mysql_error() ) ;
}
&#13;
答案 0 :(得分:0)
你不应该给每个选项都一个名字
选择名称=&#39; avis&#39;
你只需给每个选项一个值
<select name="avis">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>