省市三级联动的数据库问题,查不到值
时间:2021-07-01 10:21:17
帮助过:5人阅读
用jquery+ajax+php做的省市联动,用$.post发起ajax请求,下面是数据库部分,
header("content-type: text/html; charset=utf-8");
require("./mysql.class.php"); /*数据库连接类没有问题,关键是想问怎么判断post过来的是要查哪个表*/
$my = new mysql;
$my->init_conn; //连接数据库
if($_POST['province']==""){ //如果是省那个下拉框发的请求,就去省级表里查
//第一次从省级表去数据的时候发过来的是空
$sql = "select * from province"; //以下查表取得数据也ok,测的时候只查省输出都没问题
$my->getRowsArray($sql); //关键是现在想不出来怎么判断是要查哪个表,
$arr = $my->rowsArray;
$json = json_encode($arr);
echo $json;
}
if($_POST['city']){ //$_POST['city']是city的fatherid
$sql = "select * from city where fatherid='$_POST['city']'";
$my->getRowsArray($sql);
$arr = $my->rowsArray;
$json = json_encode($arr);
echo $json;
}
if($_POST['area']){
$sql = "select area from area where fatherid='$_POST['area']'";
$my->getRowsArray($sql);
$arr = $my->rowsArray;
$json = json_encode($arr);
echo $json;
}
?>
回复讨论(解决方案)
init_conn; //连接数据库 if($_POST['province']==""){ //如果是省那个下拉框发的请求,就去省级表里查 //第一次从省级表去数据的时候发过来的是空 $sql = "select * from province"; //以下查表取得数据也ok,测的时候只查省
输出都没问题 $my->getRowsArray($sql); //关键是现在想不出来怎么判断是要查哪个表, $arr = $my->rowsArray; $json = json_encode($arr); echo $json; } if($_POST['city']){ //$_POST['city']是city的fatherid $sql = "select * from city where fatherid='$_POST['city']'"; $my->getRowsArray($sql); $arr = $my->rowsArray; $json = json_encode($arr); echo $json; } if($_POST['area']){ $sql = "select area from area where fatherid='$_POST['area']'"; $my->getRowsArray($sql); $arr = $my->rowsArray; $json = json_encode($arr); echo $json; } ?>
竟然直接把POST过来的数据放到sql里,胆子太大了
不知道你要问什么,详细描述一下你遇到的问题。