Php 为什么我的应用程序未连接到本地主机服务器?

Php 为什么我的应用程序未连接到本地主机服务器?,php,android,login,Php,Android,Login,目前我正在学习登录和注册教程。我完全遵循了教程,但失败了。我的Php脚本很好,它们连接到本地主机服务器。但是,当我在我的应用程序上运行时,它不工作并且根本没有响应,请帮助我检查并查看是否有任何错误。My manifest.xml已在internet上写入代码权限。我的应用程序无法链接,没有响应 这是我的链接类,BackgroundTask.class package com.example.lam.loginregistertest2; import android.content.Conte

目前我正在学习登录和注册教程。我完全遵循了教程,但失败了。我的Php脚本很好,它们连接到本地主机服务器。但是,当我在我的应用程序上运行时,它不工作并且根本没有响应,请帮助我检查并查看是否有任何错误。My manifest.xml已在internet上写入代码权限。我的应用程序无法链接,没有响应

这是我的链接类,BackgroundTask.class

package com.example.lam.loginregistertest2;

import android.content.Context;
import android.os.AsyncTask;
import android.widget.Toast;

import org.apache.http.HttpConnection;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;

/**
 * Created by LAM on 3/8/2015.
 */
public class BackgroundTask extends AsyncTask<String,Void,String> {
Context ctx;

BackgroundTask(Context ctx) {
    this.ctx = ctx;

}

@Override
protected void onPreExecute() {
    super.onPreExecute();
}

@Override
protected String doInBackground(String... params) {
    String reg_url = "http://192.168.43.225/webapp/register.php";
    String login_url = "http://10.0.2.2/webapp.login.php";

    String method = params[0];
    if (method.equals("register"))
    {
String name = params[1];
        String age = params[2];
        String username = params[3];
        String password = params[4];

        try {
            URL url = new URL(reg_url);
            HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
            httpURLConnection.setRequestMethod("POST");
            httpURLConnection.setDoOutput(true);
            OutputStream OS = httpURLConnection.getOutputStream();
            BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(OS,"UTF-8"));
            String data = URLEncoder.encode("name","UTF-8") +"="+URLEncoder.encode(name,"UTF-8")+"&"+
                    URLEncoder.encode("age","UTF-8") +"="+URLEncoder.encode(age,"UTF-8")+"&"+
                    URLEncoder.encode("username","UTF-8") +"="+URLEncoder.encode(username,"UTF-8")+"&"+
                    URLEncoder.encode("password","UTF-8") +"="+URLEncoder.encode(password,"UTF-8");
            bufferedWriter.write(data);
            bufferedWriter.flush();
            bufferedWriter.close();
            OS.close();
            InputStream IS = httpURLConnection.getInputStream();
            IS.close();
            return "Registration Success...";
        } catch (MalformedURLException e) {
            e.printStackTrace();
        }
         catch (IOException e) {
            e.printStackTrace();
        }

    }

        return null;
}

@Override
protected void onProgressUpdate(Void... values) {

    super.onProgressUpdate(values);
}

@Override
protected void onPostExecute(String result) {
    Toast.makeText(ctx,result,Toast.LENGTH_LONG).show();
}

}

检查您正在使用的URL

String reg_url = "http://192.168.43.225/webapp/register.php";
String login_url = "http://10.0.2.2/webapp.login.php";

两者都不同

请检查您正在使用的URL

String reg_url = "http://192.168.43.225/webapp/register.php";
String login_url = "http://10.0.2.2/webapp.login.php";


两者都不同

您确定您的服务器和设备是否在同一网络中吗?如果没有,请确保设备可以访问服务器。

是否确定服务器和设备是否在同一网络中?如果没有,请确保设备可以访问服务器。

String login_url=“”;可能是此url?注意:
“从用户名中选择名称,其中用户名类似于“$username”,密码类似于“$password”;”
使用
=
而不是
like
如果使用like,则不需要完全是密码/用户,它可以是一个字符
登录和注册教程。
。哪一个?这是我遵循的教程。请推荐我,如果有任何其他好的教程,因为我已经尝试了两个教程。我想知道这是否是我的android studio的问题。还有这个。字符串login_url=“”;可能是此url?注意:
“从用户名中选择名称,其中用户名类似于“$username”,密码类似于“$password”;”
使用
=
而不是
like
如果使用like,则不需要完全是密码/用户,它可以是一个字符
登录和注册教程。
。哪一个?这是我遵循的教程。请推荐我,如果有任何其他好的教程,因为我已经尝试了两个教程。我想知道这是否是我的android studio的问题。还有这个。
两者都不同。不,他们不一样。下一个问题是设备/仿真器?我已经改变了。但还是一样。设备/仿真器有什么问题?我在真实设备上试用过,但也失败了。
两者都不一样。不,他们不一样。下一个问题是设备/仿真器?我已经改变了。但还是一样。设备/仿真器有什么问题?我在真实的设备上试过,但也失败了。这是什么意思?如何检查它们是否在同一网络中?如果android设备中的浏览器可以点击本地url(即),那么设备可以访问服务器。你是说url(即192.168.43.225/webapp/register.php)可以在我的笔记本电脑浏览器上运行,那么我的设备可以访问服务器?如果是,浏览器可以运行,但设备未运行尝试从android设备而不是笔记本电脑的浏览器加载localhost页面。如果android设备的浏览器无法连接到服务器,则您的应用程序将无法访问url。设备上的“我的浏览器”无法登录到该链接。我能做些什么来修复它?这意味着什么?如何检查它们是否在同一网络中?如果android设备中的浏览器可以点击本地url(即),那么设备可以访问服务器。你是说url(即192.168.43.225/webapp/register.php)可以在我的笔记本电脑浏览器上运行,那么我的设备可以访问服务器?如果是,浏览器可以运行,但设备未运行尝试从android设备而不是笔记本电脑的浏览器加载localhost页面。如果android设备的浏览器无法连接到服务器,则您的应用程序将无法访问url。设备上的“我的浏览器”无法登录到该链接。我能做些什么来修复它?
<?php
require "init.php";
$username = "ivan";
$password = "12";

$sql_query = "select name from user where username like '$username' and   password like '$password';";
$result = mysqli_query ($con,$sql_query);
if(mysqli_num_rows($result)>0){
$row = mysqli_fetch_assoc($result);
$name = $row["name"];
echo "<h3>Hello welcome".$name."</h3>";
}else{
echo "No info is available.";
}
?>
package com.example.lam.loginregistertest2;

import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;

public class Register extends Activity {
EditText ET_NAME, ET_USER_NAME,ET_USER_PASS,ET_AGE;
String name,age, username,password;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_register);
    ET_NAME = (EditText)findViewById(R.id.name);
    ET_AGE = (EditText)findViewById(R.id.age);
    ET_USER_NAME = (EditText)findViewById(R.id.new_user_name);
    ET_USER_PASS = (EditText)findViewById(R.id.new_user_pass);

  }

public void userReg(View view)
{
name = ET_NAME.getText().toString();
age = ET_AGE.getText().toString();
username = ET_USER_NAME.getText().toString();
password = ET_USER_PASS.getText().toString();
String method = "register";
BackgroundTask backgroundTask = new BackgroundTask(this);
backgroundTask.execute(method,name,age,username,password);
finish();
}
}
String reg_url = "http://192.168.43.225/webapp/register.php";
String login_url = "http://10.0.2.2/webapp.login.php";