0

Android デバイスから php を介して mysql に位置情報データを送信しようとしています。何らかの理由で機能しません。mySQL データベースには表示されません。私は何か間違ったことをしていますか?

AS3

var myLat;
var myLong;
if (Geolocation.isSupported){
    var my_geo:Geolocation = new Geolocation();
    my_geo.addEventListener(GeolocationEvent.UPDATE, onGeoUpdate);
    my_geo.setRequestedUpdateInterval(100);
} 
function onGeoUpdate(event:GeolocationEvent):void {
    myLat = event.latitude;
    myLong = event.longitude;
    test1.text = myLat;
    test2.text = myLong;
}
// Send Geolocation
function sendGps():void {
    var variables:URLVariables = new URLVariables();
    var varSend:URLRequest = new URLRequest("http://www.mypage.com/handler.php");
    varSend.method = URLRequestMethod.POST;
    varSend.data = variables;
    var varLoader:URLLoader = new URLLoader;
    varLoader.dataFormat = URLLoaderDataFormat.TEXT;
    variables.myrequest = "write_gps";
    variables.username = userName;
    variables.lati = myLat;
    variables.longi = myLong;
    varLoader.load(varSend);    
}

var myTimer:Timer = new Timer(1000);
myTimer.addEventListener(TimerEvent.TIMER, runItAll);
myTimer.start();
function runItAll(event:TimerEvent):void {
     sendGps();
}

PHP

if (isset($_POST['myrequest']) && $_POST['myrequest'] == "write_gps") {
    $username = $_POST['username'];
    $latitude = $_POST['lati'];
    $longitude = $_POST['longi'];
    require_once "connect_to_mysql.php";
    $update_sql = mysql_query("UPDATE current SET longitude='$longitude',     latitude='$latitude' WHERE username='$username'");
    mysql_close();
};
4

2 に答える 2

0

コードは SQL インジェクションに対してオープンであり、MySQL とやり取りするときは常に PDO ( http://php.net/manual/de/ref.pdo-mysql.php ) を使用する必要があります。

PHP コードで print_r($_POST) を実行すると、必要なデータが得られますか?

于 2013-10-01T12:59:42.187 に答える