簡體   English   中英

Sencha ajax調用php文件

[英]Sencha ajax call to php file

我既是sencha又是ajax新手。 我正在嘗試從連接到mysql服務器的php文件返回一些數據。 當我按下一個按鈕時,我正在觸發一個ajax請求。

這是我按下按鈕時的煎茶代碼.....

    onShow: function(){

        setInterval(function(){
            console.log("Server pinged");
            myRequest = Ext.Ajax.request({
            url: 'http://localhost/getpoi.php',
            method: 'GET',
            params: {
                poiid: '3'
            },
            callback: function(response) {
                console.log(response.responseText);
            }
        });

        },5000);
     },

我的getpoi php文件代碼如下........

    <?php
    $poiid = $_GET["poiid"];
    $lat;
    $long;
    $con = mysql_connect("localhost","root","");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

    mysql_select_db("murmuration_db", $con);

    $result = mysql_query("SELECT * FROM POI WHERE id=$poiid");

    while($row = mysql_fetch_array($result))
      {
        $lat = $row['anchor_geolocation_lat'];
        $long = $row['anchor_geolocation_lon'];
      }

    $response = $lat. ' '. $long;
    echo $response;
    return $response;
    mysql_close($con);

    ?>

php文件之所以起作用,是因為如果我在文件本身中將set poiid更改為3並在瀏覽器中將其打開,則會得到該位置。 但是,如果我通過該按鈕在sencha應用程序中調用它,則控制台會正確記錄“服務器ping”,但會記錄“未定義”而不是坐標。 有什么想法我做錯了嗎?

在此先感謝

看來您ajax沒有正確發送請求。 嘗試這個:

setInterval(function(){
    console.log("Server pinged");
    myRequest = Ext.Ajax.request({
    url: 'http://localhost/getpoi.php?poiid=3',
    method: 'GET',
    callback: function(response) {
        console.log(response.responseText);
    }
});

為確保正在加載,請按F12,轉到“網絡”並查看請求。 ;)(Chrome上的Firebug或Inspect Element)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM