如何将下拉列表中检索到的值的id从数据库发送到php文件
How to send id of a retrieved value in drop down list from database to a php file?
大家好,我正在从数据库中检索一些值,并使用ajax和php在下拉列表中显示。从下拉列表中选择一个字段(即$row['curse_codes']之一)后,我想在点击提交按钮后将$courseId中包含的主键发送到另一个文件进行进一步处理。我正在按预期在下拉列表中获取值,但我无法将id传递给另一个文件。这是我用来在下拉列表中检索数据的代码。
<?php
$qd = $_GET['q'];
$q = mysql_real_escape_string($qd);
$branch = $_SESSION['session_branch'];
$_SESSION['sem'] = $q;
$query = "select *FROM course_details WHERE branch='" . $branch . "' AND sem = '" . $q . "'";
$run = mysql_query($query) or die($query."<br/><br/>".mysql_error());
$num = mysql_numrows($run);
?>
<select class="action" name='id'>
<option name="usn" value="" class="displayUsn">-- Select Course --</option>
<?php
while($row = mysql_fetch_assoc($run)){
$courseId = $row['course_id'];
echo "<option class='displayRec' value = 'addToTemp.php?id=$courseId'" . ">" . $row['course_codes'] . "</option>";
}
echo "</select>";
if($num > 0){
echo " ";
echo "<input type='button' onClick='"window.location.href='addToTemp.php''" value='Add' id='id'>";
}else{
echo "No courses available";
}
mysql_close($bd);
?>
在addToTemp.php中,我试图获得如下id:
if(isset($_GET['id'])){
$getId = $_GET['id'];
}
但是id不包含任何值。请帮忙。
您必须更改PHP代码的打印输出,只打印otion值中的id,而不是url:
while($row = mysql_fetch_assoc($run)){
$courseId = $row['course_id'];
echo "<option class='displayRec' value = '".$courseId."'" . ">" . $row['course_codes'] . "</option>";
}
以上可能会生成以下HTML:
<option name="usn" value="" class="displayUsn">-- Select Course --</option>
<option class='displayRec' value = "1" >1Code</option>
<option class='displayRec' value = "2" >2Code</option>
<option class='displayRec' value = "3" >3Code</option>
<option class='displayRec' value = "4" >4Code</option>
<option class='displayRec' value = "5" >5Code</option>
使用函数中的window.location
。所有结果是:
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
<select class="action" name='id' id="sel">
<option name="usn" value="" class="displayUsn">-- Select Course --</option>
<option class='displayRec' value = "1" >1Code</option>
<option class='displayRec' value = "2" >2Code</option>
<option class='displayRec' value = "3" >3Code</option>
<option class='displayRec' value = "4" >4Code</option>
<option class='displayRec' value = "5" >5Code</option>
</select>
<input type='button' onClick="GotoPage()" value='Add' id='id'>
<script>
function GotoPage(){
s = document.getElementById('sel');
if (s.value != ''){
window.location.href='addToTemp.php?id='+s.value;
}
}
</script>
</html>
签出此演示
您可以使用一个表单而不是链接到另一个页面。当你链接到另一个网页时,你需要使用javascript获取所有数据,并将其传递到一个新页面。为此,请查看以下内容:(在jQueryAjax函数中将整个表单作为数据传递)。如果加载新页面对您来说无关紧要,那么您可以使用表单,如下所述。
这是index.php,我省略了第一个php标签:
<form method="get" id="myform" enctype="multipart/form-data" action="addToTemp.php">
<input type="hidden" name="courseID" value="<?php echo $courseID; ?>">
<select class="action" name="id">
<option value="select" class="displayUsn">-- Select Course --</option>
<?php
while($row = mysql_fetch_assoc($run)){
$courseId = $row['course_id'];
echo "<option class='displayRec' value = '".$courseId."'>" . $row['course_codes'] . "</option>";
}
echo "</select>";
if($num > 0){
echo "<input type='"button'" onClick='"document.getElementById('myform').submit();'" value='"Add'" id='"id'">";
}else{
echo "No courses available";
}
mysql_close($bd);
?>
</form>
并使用它来读取$_GET数据。或者,您也可以使用方法"post"和$_post来读取数据。注意提交当前表格的"课程ID"值时隐藏的表格标签。
<?php
$value=$_GET['id'];
echo "Select value: ".$value;
print_r($_GET);
?>
相关文章:
- 通过CSV文件上载更新数据库表
- 使用node-js上传文件,并将表单信息存储在数据库(mysql)中
- 使用对数据库的写入权限保护文件
- 使用 pur Html 和 Javascript 将文件插入数据库
- 使用ajax将图像上传到文件数据库有疑问
- 我无法以某种方式在数据库中POST文件
- 将数据库中的数据转换为可下载的PDF文件
- Html5存储本地存储数据库文件
- 如何将图像文件以及JavaScript变量的值上传到服务器和数据库
- 使用node.js将非常大的json文件索引/摄取到数据库中
- 有没有一种简单的方法可以通过javascript将MySQL文件导入SQLite数据库
- 最佳实现:将图像文件上传到数据库,并从数据库中读取图像
- Javascript/PHP,使用文本文件作为数据库,并将内容组织到阵列表中
- 如何在Web SQL数据库中逐行插入文本文件
- 当使用AJAX获取PHP文件以从MySQL数据库中检索数据时,会出现下拉表单disapering
- 将数据库存储/备份到一个文件中,IndexeDB、WebSQL和SQLlite的区别
- 使用Javascript调用从MySQL数据库读取网站内容的PHP文件
- 如何将下拉列表中检索到的值的id从数据库发送到php文件
- HTML5 - Web SQL数据库文件存储和所有表创建的地方
- 如何在javascript中连接PHP数据库文件