欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

多表查询碰到的难题

程序员文章站 2022-05-18 15:23:27
...
多表查询遇到的难题
要实现 一个需求:通过硬件设备向服务器发出一个请求,
请求带3个参数:
1.用户编码
2.经度
3.纬度


服务器操作:
1.通过经纬度去百度地图获取具体地理地址
2.通过用户编码进行多表查询。获取用户的手机号码。
3.通过取得的地址使用短信网关发送到查询到的手机中
4.短信网关返回发送成功则保存相关数据到mysql



现在问题出在多表查询没有返回手机号码。但是在操作面板则能查询到。是什么问题

流程图:
多表查询碰到的难题

php代码:
    include_once "config.php";
header("Content-type: text/html; charset=utf8");
$mysql=mysqli_connect($db_host,$db_user,$db_password,$db_name);
mysql_select_db($db_name,$mysql);
mysql_query("SET NAMES 'utf8'");
mysql_query("set character_set_client='utf8'");
mysql_query("set character_results='utf8'");
mysql_query("set collation_connection='utf8'");
$user=$_GET['user'];
$lat=$_GET['lat'];
$lng=$_GET['lng'];

//获取地理地址
date_default_timezone_set('PRC');
$into_time=Date("Y-m-d H:i:s");
$url="http://api.map.baidu.com/geocoder/v2/?ak=E6f2d2e9e662917d0e6eee74ced3db24&callback=renderReverse&location=".$lat.",".$lng."&output=json&pois=1";



$json=file_get_contents($url);
$xjson = substr($json,29,-1);
$point = $lat.'_'.$lng;
$data=json_decode($xjson,true);
$dress = $data['result']['formatted_address'];
file_put_contents("localjson.txt",$data.'--dress--'.$dress);

// $g="select akw_user.mobile from akw_user where akw_user.id in (select user_group.userid from user_group where user_group.sqlid='".$user."')";
//多表查询
$g="select akw_user.mobile from akw_user where akw_user.id in (select user_group.userid from user_group where user_group.sqlid = '".$user."')";
$ids= mysql_query($g);
[email protected]_fetch_assoc($ids);
$f=$n['id'];
echo '--f--'.$f.'--g--'.$g;
?>

------解决思路----------------------
晕死,我是让你修改SQL语句,增加对id字段引用:
Quote: 引用:

$g="select akw_user.mobile from akw_user where akw_user.id in (select user_group.userid from user_group where user_group.sqlid = '".$user."')";
$ids= mysql_query($g);
[email protected]_fetch_assoc($ids);
$f=$n['id'];


你的SQL查询里面仅仅获取了mobile 字段,但是你$f=$n['id'],貌似很不合理啊,获取一个没有select的字段,臣妾做不到啊

新增后提示出错:
select akw_user.mobile from akw_user where akw_user.id in (select user_group.userid from user_group where user_group.sqlid = '1409203388')
Access denied for user 'root'@'localhost' (using password: NO)

------解决思路----------------------

$g="select akw_user.mobile,akw_user.id from akw_user where akw_user.id in (select user_group.userid from user_group where user_group.sqlid = '".$user."')";
$ids= mysql_query($g);
[email protected]_fetch_assoc($ids);
$f=$n['id'];


改这样试试。
------解决思路----------------------
我的#15 就被你忽视了
------解决思路----------------------
mysqliiiiiii_connect
mysql_query
说来惭愧一直用框架,加了i的能通用吗
------解决思路----------------------
把你修改后的代码贴出来看看。
多表查询碰到的难题

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频