php mysql防止下拉重复

标签 php mysql duplicates dropdown

我想防止在我的编辑页面中重复下拉选项..

这是我的查询:

$res= mysql_query ("SELECT * FROM Acc_skills
INNER JOIN Accounts ON 
Accounts.Role_ID = Acc_skills.FK_Role_ID 
INNER JOIN Skills ON 
Skills.Skills_id = Acc_skills.FK_Skills_ID
WHERE Acc_skills.Acc_skills_id = '$id'");
$row = mysql_fetch_array($res); 

这是我的代码:

<?php 
echo '<option value= '.$row[3].' selected="selected">'.$row[3].' </option>';
echo '<option id="Low" value="Low">Low</option>
      <option id="Average" value="Average">Average</option>
      <option value="High">High</option>
</select>';
?>

我已经设法从我的数据库中提取技能水平数据(例如,高),但是,它现在显示重复的下拉选项(例如,现在有 2 个“高”选项)。 由于技能级别选项是手动输入的,我如何防止出现重复的下拉选项?

提前致谢!

最佳答案

根据您的意见,您需要使用 selected=""根据数据库值的选项。你可以这样使用:

<select>
<option <?=($row[3] == 'Low' ? 'selected=""' : '')?> id="Low" value="Low">Low</option>
<option <?=($row[3] == 'Average' ? 'selected=""' : '')?> id="Average" value="Average">Average</option>
<option <?=($row[3] == 'High' ? 'selected=""' : '')?> value="High">High</option>
</select>

解释:

如果$row[3]等于“平均”或“高”或“低”比选择相关选项菜单并在<option>中添加selected=""属性标签。

旁注:

请使用mysqli_*PDO扩展因为 mysql_*扩展名已弃用,在 PHP 7 中不可用.

关于php mysql防止下拉重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35007519/

相关文章:

php - 在 PHP 中将字符串解释为 HTML

php - 如何在 PHP 中发出异步 HTTP 请求

php - 使用Xpath提取元素

MySQL MyISAM 如何在不锁定表的情况下执行读取?

mysql - 插入/删除MySQL/MariaDB,自动显示在React表中

mysql - 基于第一次出现的sql动态限制

mysql - 根据多列获取mysql中的重复记录

java - 如何删除索引列表中的重复元素?

python - 计算列表中唯一字符串的数量? python 3

php - 通过比较语句在 Doctrine 中排序结果