我想要做的是有点混乱,我不擅长英语,所以我先在这里发布代码,这样你就可以轻松理解:
以下是表单内容:
<select name="options[1][]" id="perso_1" class="multiselect required-entry product-custom-option" title="" onchange="displayCondition()">
<option value="0" disabled>Testing for Stackoverflow</option>
<option value="1">Option1</option>
<option value="2">Option2</option>
</select>
这是功能:
<script language="javascript">
function displayCondition() {
condition = new Array("","echo 'Option 1 chosen';","echo 'Option 2 chosen';", "");
var getsel = document.getElementById('perso_1').value;
document.getElementById("divId").innerHTML = condition[getsel];
}
</script>
以下是我的变种:
$getperso = "SELECT * FROM perso";
$persoresult = mysqli_query($connection, $getperso) or die("Erro!: " . mysql_error());
$row = mysqli_fetch_assoc($persoresult);
解释:当用户选择&#34; Option1&#34;时,它将以#34;选择的选项1&#34;形式回显,正如我在脚本中所写的那样。问题是我在我的MySQL数据库表perso
中得到了一些内容,而不是&#34;选项1选择&#34;。我希望用户看到与所选选项对应的perso_name
。
我无法使用while
循环回显每一行,因为如果我这样做,用户在选择&#34;选项1&时会看到每行perso_name
#34 ;.
我正在寻找像&#34;回波&#39; $ row_1 [&#39; perso_name&#39;]&#34;或类似的东西,但每个选项都没有300行代码。
谢谢,如果不够清楚,请对不起!
答案 0 :(得分:0)
为数据库中的每个“perso”创建一个ID。 ID将与select选项的值相同。而不是像这样使用查询并在之后回显:
$getperso = "SELECT perso_name FROM perso where id=$id";
您将获得$ id:
var getsel = document.getElementById('perso_1').value;
我希望它很清楚。