2016-08-22 36 views
0

尝试用选择的用户当前值创建组合框。我想我的问题是与撇号和引号 - 任何人都可以用锐利的眼睛帮助吗?变量$ MCI在任何引号/撇号之前创建并且正常运行。用选中的项目创建组合框

$MCI = ''; 
$MCI = $row['MobileCarrierID']; 

echo ' 
<select name="MobileCarrierName"> 
<?php 
$sql = mysqli_query("SELECT MobileCarrierID, MobileCarrierName FROM tblMobileCarrier ORDER BY MobileCarrierName;"); 
while ($row = mysqli_fetch_array($sql)){ 
$MCISelected = (' . $MCI . '==$row["MobileCarrierID"] ? " selected" : ""); 
echo "<option value=" . $row['MobileCarrierID'] . $MCISelected . ">" . $row['MobileCarrierName'] . "</option>"; 
} 
?> 
</select>'; 

谢谢!

回答

0

你有

echo ' 
<select name="MobileCarrierName"> 
<?php 
$sql= 

需要被改为

echo '<select name="MobileCarrierName">'; 
$sql= 

而且

$MCISelected = (' . $MCI . '==$row["MobileCarrierID"] ? " selected" : ""); 

需要改变,以

$MCISelected = ($MCI==$row["MobileCarrierID"])? " selected" : ""; 

和你mysqli_query丢失即

mysqli_query($db,$query); 

数据库连接最后,关闭了与

echo '</select>'; 

你的报价和括号内是关闭的,您已将选定的变量放入您的值中,完整的编辑代码应该类似于...

<?php 
echo '<select name="MobileCarrierName">'; 
$sql = mysqli_query($conn, "SELECT MobileCarrierID, MobileCarrierName FROM tblMobileCarrier ORDER BY MobileCarrierName;"); 
while ($row = mysqli_fetch_array($sql)){ 
$MCISelected = ($MCI==$row["MobileCarrierID"])? " selected" : ""; 
echo '<option '.$MCIselected.' value="'.$row["MobileCarrierID"].'">'.$row["MobileCarrierName"].'</option>'; 
} 
echo'</select>'; 

检查出How to set an option from multiple options or array with different values to views as selected in select box using PHP为指导如何工作

0
<?php 
$sql = mysqli_query("SELECT MobileCarrierID, MobileCarrierName FROM tblMobileCarrier ORDER BY MobileCarrierName;"); 
?> 
<select name="MobileCarrierName"> 
<?php 
while ($row = mysqli_fetch_array($sql)){ 
    $MCI = $row['MobileCarrierID']; 
    $MCISelected = ($MCI==$row["MobileCarrierID"]) ? " selected" : ""; 
    echo "<option value=".$MCI." ".$MCISelected.">".$row['MobileCarrierName']."</option>"; 
} 
?> 
</select> 

试试这个