【发布时间】:2016-09-30 16:43:35
【问题描述】:
我的网站中有下拉列表,选项存储在数据库中的单独表中,然后取回下拉列表。现在,每当我从下拉列表中选择任何选项时,选项的值都会存储在主表中。现在如何将选定的选项从数据库中取回到网站?
【问题讨论】:
我的网站中有下拉列表,选项存储在数据库中的单独表中,然后取回下拉列表。现在,每当我从下拉列表中选择任何选项时,选项的值都会存储在主表中。现在如何将选定的选项从数据库中取回到网站?
【问题讨论】:
你能提供更多细节吗?我假设当用户加载页面时,您希望下拉菜单显示与他们上次登录时相同的值或类似的值?
如果是这样的话,你需要一些东西。开始你的 body 标签需要一个 onload 函数,当页面加载时会被调用:
<body onload="dosomething()">
在您的 javascript dosomething() 函数中,您将对后端进行 ajax 调用,这可能是一个 php 脚本。
此脚本将从 mysql 中获取值并返回。
您的 ajax 代码将具有一个 onreadystatechange() 函数,该函数将接收来自后端的响应并执行类似的操作
document.getElementById('foo').value=whatevercamebackviaajax
写在我的脑海中,有些模糊,但我或其他人可能会通过更多信息做得更好。
您需要将 javascript 添加到您的标签中。
【讨论】:
现在我们可以看到我们从数据库中获取单个用户选项的场景,这样很容易理解,如果需要自定义代码,您应该编写自己的代码。
PHP方法:
场景:保持选中
login username等于选择标签中的clientname。
<?php
$select="SELECT * FROM TABLE where id='".$_GET['uid']."'";
// here `uid` is the logged in user id
$q=mysqli_query($conn,$select) or die($select);
$row=mysqli_fetch_array($q);
?>
<select name="sclient" id="sclient" class="reginput"/>
<option value="">Select Client</option>
<?php
$sel="select * from user where type='client'";
$que=mysqli_query($conn,$sel) or die($sel);
while($res=mysqli_fetch_array($que))
{ ?>
<option value="<?php echo $res['login_name']; ?>"<?php if($row['clientname']==$res['login_name']) echo 'selected="selected"'; ?>><?php echo $res['login_name']; ?></option>
<?php } ?>
</select>
参数:
$conn - 到 DB 的连接变量。使用mysqli 的数据库连接
【讨论】: