使用Sencha Touch 2 Ajax请求从PHP代码获取字符串结果

时间:2012-06-20 11:32:28

标签: php javascript sencha-touch

我正在编写一个移动应用程序,希望使用PHP和Ajax以及Sencha touch 2来获取用户的IP地址。

目前Ajax请求返回成功,但responseText是php文件中的所有代码。

这是我在名为action.php的文件中的php代码:

<?php
function getIPAddress()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP']))   
    {
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))  
    {
      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    else
    {
      $ip=$_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}

?>

这是我的ajax请求:

Ext.Ajax.request({
        url : 'action.php?',
        success : function(response, options) {
            console.log('success ' + response.responseText);
        },
        failure : function(response, options) {
            console.log('failure ' + response);
        }
    });

控制台打印出“成功”以及php文件中的确切文本。如何从php文件中获取IP地址?谢谢:))

1 个答案:

答案 0 :(得分:0)

您需要调用该函数并回显结果,以便在AJAX请求中返回。

<?php
function getIPAddress()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP']))   
    {
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))  
    {
      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    else
    {
      $ip=$_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}
echo getIPAddress();
?>