我的数据库中有两个表
movie-> movie_id,movie_title
screening-> scr_id,movie_id,scr_date,scr_start
我正在尝试制作三个相关的下拉列表,其中日期和时间根据所选的电影自动显示在列表中。 Dropdown list. 我在我的选择列表上面调用了一个javascript函数,就像这个
<?php
include_once("class/db_inc.php");
?>
<script type="text/javascript">
$('#movie').change(function() {
var id=$(this).val();
$.ajax
({
type: "POST",
url: "ajax.php",
data: "&id="+id+"&get_date=1",
success: function(html)
{
$("#date").append(html);
}
});
});
$('#timeime').change(function() {
var id=$(this).val();
$.ajax
({
type: "POST",
url: "ajax.php",
data: "&id="+id+"&get_time=1",
success: function(html)
{
$("#time").append(html);
}
});
});
</script>
<select class="list_of_movies" name="movie" id="movie"><option value="">Select Movie</option>
<?php
$res=$schedule->getmoviedetail();
while ($row=$connect->fetchArray($res))
{
$movie_id=$row['movie_id'];
$title=$row['movie_title'];
echo "<option value='$movie_id'>$title</option>";
}
?>
</select>
<select class="list_of_movies" name="date" id="date"><option value="">Select Date</option>
</select>
<select class="list_of_movies" name="time" id="time" ><option value="">Select Time</option></select>
<div class="tab_desc">
<a href="movie-select-show.html">Book Now</a>
</div>
我的ajax.php就像这样
<?php
include_once("class/db_inc.php");
if($_REQUEST['get_date']){
$sql=mysql_query("SELECT * FROM `screening` where `movie_id`=".$_REQUEST['id']);
$date="";
while($row=mysql_fetch_array($sql))
{
$sid=$row['scr_id'];
$sdate=$row['scr_date'];
$date.= "<option value='".$sid."'>".$sdate."</option>";
}
echo $date;
}
elseif($_REQUEST['get_time']){
$time="";
$sql=mysql_query("SELECT * FROM `screening` where `movie_id`=".$_REQUEST['id']);
while($row=mysql_fetch_array($sql))
{
$sid=$row['scr_id'];
$stime=$row['scr_start'];
$time.= "<option value='".$sid."'>".$stime."</option>";
}
echo $time;
}
?>
第一个下拉列表显示电影列表正常。但第二次和第三次下拉完全没有效果。我现在被困在这一天了。有人可以帮我这个吗?
答案 0 :(得分:0)
HTML.
您遇到问题。您没有正确关闭电影 <select>
。
答案 1 :(得分:0)
将您的Javascript更改为:
<script type="text/javascript">
$(function () {
$('#movie').change(function() {
var id = $(this).val();
$.ajax({
type: "POST",
url: "ajax.php",
data: {
id: id,
get_date: 1
},
success: function(html) {
$("#date").append(html);
}
});
});
$('#date').change(function() {
var id = $(this).val();
$.ajax ({
type: "POST",
url: "ajax.php",
data: {
id: id,
get_time: 1
},
success: function(html) {
$("#time").append(html);
}
});
});
});
</script>
您还应该更正PHP以避免SQL注入。尝试使用mysqli
或PDO