我试图创建一个搜索,用户从数据库中选择两个不同的数据位,然后打印出一些符合要求的结果。我知道我需要使用AJAX或类似的东西,但我不知道应该怎么做。第一个下拉框工作正常,因为它不依赖于任何内容。下面是代码:
<select name="raceTrack2" onchange="">
<?php $postids = $wpdb->get_col("
SELECT trackName
FROM " . $trackTableName . ";
");
foreach ($postids as $value) {
echo \'<option>\' . $value . \'</option>\' ;
} ?>
</select>
这很好用。下一步就是开始变得复杂。现在,我需要获取第一个选择框的值并将其添加到下一个选择框的SQL查询中,然后在第一个选择框更改时使用
onchange
.
<select name="raceDate">
<?php $postids2 = $wpdb->get_col("
SELECT DISTINCT raceDate
FROM " . $tableName . "
WHERE trackName = \'" . $track . "\';
");
foreach ($postids2 as $value2) {
echo $value2 ;
} ?>
</select>
然后,我需要获取这两个下拉列表的值,并在最终查询中使用它们来显示结果:
$postids = $wpdb->get_results("
SELECT driverName, driverClass, driverPosition
FROM " . $tableName . "
WHERE trackName = \'" . $track . "\' AND raceDate = " . $date . ";
");
foreach ($postids as $value) {
echo \'<tr valign="top">\';
echo \'<td>\' . $value->driverName . \'</td>\';
echo \'<td>\' . $value->driverClass . \'</td>\';
echo \'<td>\' . $value->driverPosition . \'</td>\';
echo \'</tr>\';
}
如有任何建议,将不胜感激。