将电话应用程序(phonegap)连接到本地主机文件(在本地机器中)

Posted

技术标签:

【中文标题】将电话应用程序(phonegap)连接到本地主机文件(在本地机器中)【英文标题】:Connecting a phone app (phonegap) to a localhost file(in local machine) 【发布时间】:2016-08-08 09:24:28 【问题描述】:

我正在创建一个 phonegap 移动应用程序(android)。我已经使用我的手机模拟了该应用程序。当我在本地机器上的表单上进行注册时,它成功并且数据被提交到数据库。但是当我尝试做同样使用我的手机没有任何反应。我认为的原因是手机无法到达我机器的环回地址。我该如何解决这个问题?

注册文件 (html)

<script type="text/javascript">
    $(document).ready(function()  
    $("#signup").click(function()
    var name = $("#name").val();
    var email = $("#email").val();
    var username=$("#username").val();
    var password=$("#password").val();

    // Returns successful data submission message when the entered information is stored in database.
    var dataString = 'name='+ name + '&email='+ email + '&username=' + username + '&password=' + password;

    if(name==''|| email=='' || username=='' || password=='')
    
        alert("Please Fill All Fields");
    
    else
    
        //AJAX code to submit form.
        $.ajax(
                type: "POST",
                url: "http://127.0.0.1/test/signup.php",
                data: dataString,
                cache: false,
                success: function(result)
                                    alert(result);
                                        
        );
    
    return false;
    );
    );
</script>
    
<div class="app">
        <div class="panel panel-primary">
            <div class="panel-heading">
                <h3 class="panel-title">Sign Up</h3>
            </div>
            <div class="panel-body">
                <div class="form-group">
                    <input type="text" name="name" id="name" class="form-control" placeholder="Full Name" required>
                    <br>
                    <input type="email" name="email" id="email" class="form-control" placeholder="Email Address" required>
                    <br>
                    <input type="text" name="username" id="username" class="form-control" placeholder="Username" required>
                    <br>
                    <input type="password" name="password" id="password" class="form-control" placeholder="Password" required>
                    <br>
                    <input type="submit" id="signup" value="Submit" class="btn btn-success">
                </div>
            </div>
            <b>or Sign In <a href="#" class="btn btn-primary" data-toggle="modal" data-target="#login-mod">Here</a></b>
        </div>
    </div>

注册文件(PHP文件)

<?php
header('Access-Control-Allow-Origin: *');
$con=mysqli_connect("localhost","root","","test") or die("error in server");

 
  	$name=$_POST['name'];
  	$email=$_POST['email'];
  	$username=$_POST['username'];
  	$password=$_POST['password'];

  	 $sql="INSERT INTO signup(name,email,username,password) values('$name','$email','$username',sha1('$password')) ";
  	 $qry=mysqli_query($con,$sql) or die(mysqli_error($con));
     if($qry)echo "Registration was successful.";
     else echo "A network error occured.Please retry.";
  
?>

【问题讨论】:

使用你的IP地址。不是127.0.0.1 我已经更换了 IP 地址,但仍然无法使用。好的将手机连接到桌面phonegap我使用IP地址。但我的问题是如何使用我的手机调用这个文件url:“127.0.0.1/test/signup.php”,它位于我的xampp服务器的本地机器中 你的手机在你的桌面连接的同一个网络下有wifi访问吗? 是的,桌面和手机在同一个wifi下。即使应用程序显示在手机中,当我在编辑器中更改代码时,手机中显示的应用程序也会自动更改 你使用的是windows os桌面吗? 【参考方案1】:

如果您使用本地网络,请使用本地网络 IP 地址。并确保您的防火墙是OFF

【讨论】:

请用例子多解释一下会有帮助

以上是关于将电话应用程序(phonegap)连接到本地主机文件(在本地机器中)的主要内容,如果未能解决你的问题,请参考以下文章

无法将本机反应连接到本地主机

PHP 本地主机应用程序连接到服务器数据库

Heroku - Socket.IO 客户端总是连接到本地主机

如何将 PhoneGap 应用程序连接到互联网

无法连接到 ejabberd 本地主机

将 HTML5 PhoneGap App 连接到在线数据库