PHP -选择下拉菜单后直接显示来自MySQL的消息
PHP - Display message from MySQL directly after selecting a dropdown
我想在用户从下拉菜单中选择一个选项后显示数据库中的详细信息。例如:
SELECT `details` FROM $tbl_name WHERE id= value of selected option
<?php
$db_name="pet"; // Database name
$tbl_name="lover"; // Table name
$pet_id=$_POST['pet_id']
$sql="SELECT details FROM $tbl_name WHERE id = $pet_id";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
$id=$rows['id'];
$details=$rows['details'];
// close while loop
}
?>
<select name="pet_id">
<option value="">Select PET:</options>
<option value="1">DOG</options>
<option value="2">BIRD</options>
<option value="3">FISH</options>
<a> then it will display details from database</a>
它使用Ajax很简单,我已经在下面检查了
db_file.php
<?php
$db_name="pet"; // Database name
$tbl_name="lover"; // Table name
$pet_id=$_POST['pet_id']
$sql="SELECT details FROM $tbl_name WHERE id = $pet_id";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
$id=$rows['id'];
$details=$rows['details'];
echo $details;//this output is transeffered to ur actual page
}
?>
current_file.php
//不要忘记包含Jquery文件…
<script>
$("#pet_id").change(function()
{
var value = $("#pet_id option:selected").text();
$.ajax({
url: "current_file.php",
data: {value: value},
type: "POST",
success: function(output) {
alert(output);//Here u wil get your output, You can append this where you want to display
}
}
})
});
</script>
<select name="pet_id" id ="pet_id" >
<option value="">Select PET:</options>
<option value="1">DOG</options>
<option value="2">BIRD</options>
<option value="3">FISH</options>
HTML
<select name="pet_id" onchange="redirect(this.value)">
<option value="">Select PET:</options>
<option value="1">DOG</options>
<option value="2">BIRD</options>
<option value="3">FISH</options>
</select>
JAVASCRIPT function redirect(selectedOption)
{
if(selectedOption)
{
window.location = 'yourpagename.php?opt='+selectedOption;
}
else
{
window.location = 'yourpagename.php';
}
}
PHP if(isset($_GET['opt']))
{
$opt = $_GET['opt']; // do not forget to sanitize this
$sql="SELECT details FROM $tbl_name WHERE id = $opt";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
$id=$rows['id'];
$details=$rows['details'];
// do something with $details; in your case echo it out
}
}
PS:停止使用mysql_*
函数。为什么?查找在这里
正确的代码是:
<form action="$_SERVER['PHP_SELF']" method="POST">
<select name="pet_id" id="pet_id" onChange="this.form.submit()">
<option value="">Select PET:</options>
<option value="1">DOG</options>
<option value="2">BIRD</options>
<option value="3">FISH</options>
</select>
</form>
则显示数据库
中的详细信息PHP$pet_id=$_POST['pet_id'];
if (!empty($pet_id)){
$db_name="pet"; // Database name
$tbl_name="lover"; // Table name
$sql="SELECT details FROM $tbl_name WHERE id = $pet_id";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
$id=$rows['id'];
$details=$rows['details'];
// close while loop
}
}//close if statement
相关文章:
- 使用jquery将mysql数据获取到新的表行中
- Ajax聊天消息重复而不仅仅是更新
- 如果localstorage为空,则显示欢迎消息
- 绑定时将Parsley minlength消息作为选项传递时,未对其进行自定义
- 离开页面时弹出消息
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- 消息显示之外的淘汰验证
- 选项卡侦听器未被来自后台脚本的消息激活
- 将地理编码结果转换为php变量以发布到mysql数据库
- jQuery在输入下验证post错误消息
- Scipt未在选定选项卡中执行以发送和接收消息
- 检查xmlhttprequest问题的消息
- AngularJs对ng消息的自定义替换
- ng消息仅在触摸时显示错误,并在错误的初始显示上转换
- 实时接收来自服务器的消息(数据库-MySQL,前端-Angularjs)
- 如何使用AJAX、PHP和MySQL发送个人消息
- 我可以使用 PHP、MySQL 和 Javascript 在我的网站上创建即时消息系统吗?
- 我希望更新未读消息的数量,并在用户收到新消息时播放通知声音.我正在使用PHP,MySql,Javascript
- 我不能添加信息到我的表在mysql.我使用javascript来显示信息消息,然后它不做任何事情
- PHP -选择下拉菜单后直接显示来自MySQL的消息