0

こんにちは、phonegap の初心者です。ログイン検証を使用して1つのhtmlファイルを作成しています。私のphpファイルの検証コード。私はAndroidエミュレーターで実行しています。その時、このphpファイルはエミュレーターで動作していません。どうすればよいですか?

<html>
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>
        </title>

        <link rel="stylesheet" href="jquery.mobile-1.1.1.min.css" />

        <link rel="stylesheet" href="my.css" />
        <style>
            /* App custom styles */
        </style>
        <script src="jquery.min.js"> </script>
        <script src="jquery.mobile-1.1.1.min.js"> </script>
        <script src="my.js">
        </script>
    </head>
    <body>
        <!-- Home -->
        <div data-role="page" id="page1">
            <div data-role="content" style="padding: 15px">
                <div data-role="fieldcontain">
                <div id="message" style="display: none;"></div>
                    <fieldset data-role="controlgroup">
                        <label for="textinput1">
                            Email:
                        </label>
                        <input name="" id="textinput1" placeholder="" value="" type="text" />
                    </fieldset>
                </div>

<script type="text/javascript">
$(document).ready(function(){
    $('#btnValidate').click(function() {

        $('#message').hide(500);

        $.ajax({
            type : 'POST',
            url : 'http://localhost/JQuery/php',
            dataType : 'json',
            data: {
                email : $('#textinput1').val()
            },
            success : function(data){
                $('#message').removeClass().addClass((data.error === true) ? 'error' : 'success')
                    .text(data.msg).show(500);
            },
            error : function(XMLHttpRequest, textStatus, errorThrown) {

                $('#message').removeClass().addClass('error')
                    .text('There was an error.').show(500);
            }
        });

        return false;
    });
});
</script>

<a data-role="button" data-inline="true"  id="btnValidate" data-transition="fade" href="#page1">Submit</a>
            </div>
        </div>
        <script>
            //App custom javascript
        </script>
    </body>
</html>

これは私のhtmlコードです。私が間違っていたので、私を背負ってください。

4

3 に答える 3

2

Android エミュレーターで PhoneGap アプリケーションを実行する場合、localhost と 127.0.0.1 はAndroid エミュレーター ループバック インターフェイスを参照します。IP アドレス 10.0.2.2 を使用して開発マシンにアクセスできます。

$.ajax({
    type : 'POST',
    url : 'http://10.0.2.2/JQuery/php',
    dataType : 'json',
    data: {
        email : $('#textinput1').val()
    }...
于 2012-08-17T12:57:46.720 に答える
1

システムの IP アドレス (192.168.1.2 など) を使用して php ファイルにアクセスするか、仮想ホストをセットアップする必要があります。Android エミュレーターは別の仮想マシンとして読み込まれるため、php ファイルの localhost にアクセスすることはできません。

于 2012-08-17T12:51:08.753 に答える
0

システムに IP を割り当て、その IP アドレス http:// 183.82.166.97:9696/index.php を使用する

httpd.confでこのように構成しました

Listen 9696 DocumentRoot "D:/PHPworkspace/HWsite" DirectoryIndex index.php AllowOverride すべて すべてから許可する
AllowOverride すべて すべてから許可する

于 2013-01-13T01:02:36.467 に答える