• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

多表查询碰到的难题

php 搞代码 3年前 (2022-01-24) 17次浏览 已收录 0个评论

多表查询遇到的难题
要实现 一个需求:通过硬件设备向服务器发出一个请求,
请求带3个参数:
1.用户编码
2.经度
3.纬度

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

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

流程图:

php代码:

<?php<br />    include_once "config.php";<br />    header("Content-type: text/html; charset=utf8");<br />    $mysql=mysqli_connect($db_host,$db_user,$db_password,$db_name);<br />    mysql_select_db($db_name,$mysql);<br />    mysql_query("SET NAMES 'utf8'");<br />    mysql_query("set character_set_client='utf8'");<br />    mysql_query("set character_results='utf8'");<br />    mysql_query("set collation_connection='utf8'");<br />	$user=$_GET['user'];<br />	$lat=$_GET['lat'];<br />    $lng=$_GET['lng'];<br /><br />    //获取地理地址<br />    date_default_timezone_set('PRC');<br />    $into_time=Date("Y-m-d H:i:s");<br />    $url="http://api.map.baidu.com/geocoder/v2/?ak=E6f2d2e9e662917d0e6eee74ced3db24&callback=renderReverse&location=".$lat.",".$lng."&output=json&pois=1";<br /><br /><br /><br />    $json=file_get_contents($url);<br />    $xjson = substr($json,29,-1);<br />    $point = $lat.'_'.$lng;<br />    $data=json_decode($xjson,true);<br />    $dress = $data['result']['formatted_address'];<br />    file_put_contents("localjson.txt",$data.'--dress--'.$dress);<br /><br />//    $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."')";<br />    //多表查询<br />    $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."')";<br />    $ids= mysql_query($g);<br />    [email protected]_fetch_assoc($ids);<br />    $f=$n['id'];<br />    echo '--f--'.$f.'--g--'.$g;<br />?>

——解决思路———————-
晕死,我是让你修改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."')";<br />    $ids= mysql_query($g);<br />    [email protected]_fetch_assoc($ids);<br />    $f=$n['id'];

你的SQL查询里面仅仅获取了mobile 字段,但是你$f=$n[‘id

本文来源gao!%daima.com搞$代*!码$网3

搞代gaodaima码‘],貌似很不合理啊,获取一个没有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')<br />Access denied for user 'root'@'localhost' (using password: NO)

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

<br />$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."')";<br />    $ids= mysql_query($g);<br />    [email protected]_fetch_assoc($ids);<br />    $f=$n['id'];<br />

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


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:多表查询碰到的难题

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址