php - Android php 连接错误? (+mysql)

标签 php android mysql

我正在尝试从 Android 应用程序获取位置(纬度、经度)并使用 php 插入数据库,然后提取 10m 半径内的数据。

问题是,当我使用智能手机测试代码时(本地测试正常),数据未正确插入。表“usergps”有 3 列(名称、纬度、经度),在我测试代码后,插入了 ( , 0, 0) 。

你能检查一下下面的php代码吗? 如果正确的话,我想我应该检查一下java代码。

<?php
if(isset($_POST['name']) && $_POST['name'] != '') {
    require_once("include/db_info.php");
    $s=mysql_connect($SERV,$USER,$PASS) or die("fail to connect to mysql");
    mysql_select_db($DBNM);


    $lat = $_POST['lat'];
    $lon = $_POST['lon'];
    $name = $_POST['name'];

    $result= mysql_query("SELECT * FROM usergps WHERE name = '".$name."'");

    $row = mysql_num_rows($result);

    if($row == 0) {
        mysql_query("INSERT INTO usergps (name,latitude,longitude)
                    VALUES
                    ('".$name."', '".$lat."', '".$lon."')");

    }
    else {
        mysql_query("UPDATE usergps SET latitude = '".$lat."' WHERE name = '".$name."'");
        mysql_query("UPDATE usergps SET longitude = '".$lon."' WHERE name = '".$name."'");
    }


    $query = mysql_query("SELECT
                *,
        ( 6371 * acos( cos( radians('".$lat."') ) * cos( radians( latitude ) ) * cos( radians( longitude )
- radians('".$lon."') ) + sin( radians('".$lat."') ) * sin( radians( latitude ) ) ) ) AS distance
            FROM usergps
            HAVING distance <= 0.01
            ORDER BY distance ASC");

    if(!$query) die ('Unable to run query:'.mysql_error());

    $numpeople = mysql_num_rows($query);
    echo json_encode($numpeople);

} else {
    $response["error"] = TRUE;
    $response["error_msg"]= "Required parameter 'name' is missing!";
    echo json_encode($response);
}
?>

最佳答案

请尝试回显从 Android 应用程序获取的数据:$lat、$lon,以检查它是否发布了正确的数据。

关于php - Android php 连接错误? (+mysql),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30659043/

相关文章:

android - 可选权限,以便应用程序可以在所有设备上显示并在某些设备上启用可选功能?

mysql - 需要帮助从 MySQL 中的连接表中排除某些行

php - 使用 yii 连接 mysql 时访问被拒绝

php - 按字母范围对数组元素进行分组

android - 我应该如何解决这个崩溃问题?

Android如何在 Activity 中更改主题

MySQL多表锁

php - 如果在获取循环内发出另一个查询,则 PDO dblib over freetds 会重置 sql server 2000 上的查询获取

php - Symfony2 文件发现类不在其中

php - 根据数据库中提交的用户选择填充 HTML 单选按钮