Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java force使用mySQL和php关闭android中的注册活动_Java_Php_Android_Mysql_Xml - Fatal编程技术网

Java force使用mySQL和php关闭android中的注册活动

Java force使用mySQL和php关闭android中的注册活动,java,php,android,mysql,xml,Java,Php,Android,Mysql,Xml,我正试图使一个应用程序,将需要用户登录,用户可以在那里注册。我正在使用mySQL。我的桌子没问题。我的代码没有给出任何编译时错误,但它给出了很多运行时错误,每当单击执行HttpPost的create按钮时,force就会关闭。我不知道该怎么办。我正在发布我的代码。请提供代码和错误的帮助 package com.example.learning2; import android.os.Bundle; import android.app.Activity; import android.cont

我正试图使一个应用程序,将需要用户登录,用户可以在那里注册。我正在使用mySQL。我的桌子没问题。我的代码没有给出任何编译时错误,但它给出了很多运行时错误,每当单击执行HttpPost的create按钮时,force就会关闭。我不知道该怎么办。我正在发布我的代码。请提供代码和错误的帮助

package com.example.learning2;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.ToggleButton;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

final Button crtButton = (Button) findViewById(R.id.button1);

crtButton.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Intent i = new Intent(getApplicationContext(), newUser.class);
startActivity(i);
}
});




}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}
//newUser.java

package com.example.learning2;

import java.util.ArrayList;
import java.util.List;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class newUser extends Activity{

JSONParser jsonParser = new JSONParser();

EditText idForm;
EditText nameForm;
EditText passForm;

final String url_of_post = "http://localhost/Cab_service/create_user.php";
final String TAG_SUCCESS ="success";

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sec_view);

idForm = (EditText) findViewById(R.id.userId);
nameForm = (EditText) findViewById(R.id.userName);
passForm = (EditText) findViewById(R.id.userPass);

final Button createButton = (Button) findViewById(R.id.button2);


createButton.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
new createNewUser().execute();
}
});

}

class createNewUser extends AsyncTask<String, String, String>{

protected String doInBackground(String... args){
String pid = idForm.getText().toString();
String user_name = nameForm.getText().toString();
String password = passForm.getText().toString();

List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("$pid", pid));
params.add(new BasicNameValuePair("$user_name", user_name));
params.add(new BasicNameValuePair("$password", password));

JSONObject json = jsonParser.makeHttpRequest(url_of_post, "POST", params);

Log.d("Create Response", json.toString());

try{
int success = json.getInt(TAG_SUCCESS);
if(success==1)
{
Toast.makeText(getBaseContext(), "Successful", Toast.LENGTH_SHORT).show();
finish();
}
else
Toast.makeText(getBaseContext(), "UNSuccessful", Toast.LENGTH_SHORT).show();


}catch(JSONException e){ e.printStackTrace();}
return null;
}
}

}
顺便说一句,我是新的android开发人员,对它没有太多的想法

谢谢


我认为问题出在newUser类中。你们能检查一下那个类错误吗。

问题解决了

我在应用程序中使用了“localhost”或“127.0.0.1”,但当我在emulator中运行它时,它将“localhost”作为仿真器localhost,而不是我的pc。在我将地址更改为我的PC IP后,连接正常


不过还是谢谢你

本地主机连接被拒绝。请确保您没有启用阻止端口80的防火墙(假设您没有更改HTTP侦听端口),Android无法在端口
80
12-25 03:48:51.865:W/System.err(432):原因:java.net.ConnectException:/127.0.0.1:80-连接被拒绝,
PHP
服务器和
android
都在同一台机器上?@Zarazthuztra。。我不记得换了端口。我可以使用PHP页面访问本地数据库。@Noor。。是的,在同一台机器上。默认情况下,wamp是127.0.0.1吗?原因我的电脑IP地址不同。问题在于newUser类中没有执行该类中的任何行。在连接到数据库之前,我写了一行makeToast,但没有显示出来@扎拉苏兹特拉
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.learning2"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.learning2.MainActivity"
android:label="@string/app_name" >
<intent-filter>
         <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity 
        android:name=".newUser"
        android:label="Create New User">

    </activity>
</application>
<uses-permission android:name="android.permission.INTERNET" />


</manifest>
12-25 03:48:42.014: W/KeyCharacterMap(432): No keyboard for id 0
12-25 03:48:42.014: W/KeyCharacterMap(432): Using default keymap: 

/system/usr/keychars/qwerty.kcm.bin
12-25 03:48:51.835: W/System.err(432): org.apache.http.conn.HttpHostConnectException: Connection to http://localhost refused`
12-25 03:48:51.835: W/System.err(432):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:178)
12-25 03:48:51.845: W/System.err(432):  at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
12-25 03:48:51.845: W/System.err(432):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
12-25 03:48:51.845: W/System.err(432):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:359)
12-25 03:48:51.845: W/System.err(432):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
12-25 03:48:51.845: W/System.err(432):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
12-25 03:48:51.855: W/System.err(432):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
12-25 03:48:51.855: W/System.err(432):  at com.example.learning2.JSONParser.makeHttpRequest(JSONParser.java:47)
12-25 03:48:51.855: W/System.err(432):  at com.example.learning2.newUser$createNewUser.doInBackground(newUser.java:67)
12-25 03:48:51.855: W/System.err(432):  at com.example.learning2.newUser$createNewUser.doInBackground(newUser.java:1)
12-25 03:48:51.855: W/System.err(432):  at android.os.AsyncTask$2.call(AsyncTask.java:185)
12-25 03:48:51.855: W/System.err(432):  at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
12-25 03:48:51.865: W/System.err(432):  at java.util.concurrent.FutureTask.run(FutureTask.java:138)
12-25 03:48:51.865: W/System.err(432):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
12-25 03:48:51.865: W/System.err(432):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
12-25 03:48:51.865: W/System.err(432):  at java.lang.Thread.run(Thread.java:1019)
12-25 03:48:51.865: W/System.err(432): Caused by: java.net.ConnectException: /127.0.0.1:80 - Connection refused
12-25 03:48:51.875: W/System.err(432):  at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:207)
12-25 03:48:51.875: W/System.err(432):  at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:437)
12-25 03:48:51.875: W/System.err(432):  at java.net.Socket.connect(Socket.java:983)
12-25 03:48:51.875: W/System.err(432):  at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
12-25 03:48:51.885: W/System.err(432):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:143)
12-25 03:48:51.885: W/System.err(432):  ... 15 more
12-25 03:48:51.895: E/Buffer Error(432): Error converting result java.lang.NullPointerException
12-25 03:48:51.895: E/JSON Parser(432): Error parsing data org.json.JSONException: End of input at character 0 of 
12-25 03:48:51.905: W/dalvikvm(432): threadid=9: thread exiting with uncaught exception (group=0x40015560)
12-25 03:48:51.915: E/AndroidRuntime(432): FATAL EXCEPTION: AsyncTask #1
12-25 03:48:51.915: E/AndroidRuntime(432): java.lang.RuntimeException: An error occured while executing doInBackground()
12-25 03:48:51.915: E/AndroidRuntime(432):  at android.os.AsyncTask$3.done(AsyncTask.java:200)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:274)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.FutureTask.setException(FutureTask.java:125)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:308)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.FutureTask.run(FutureTask.java:138)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.lang.Thread.run(Thread.java:1019)
12-25 03:48:51.915: E/AndroidRuntime(432): Caused by: java.lang.NullPointerException
12-25 03:48:51.915: E/AndroidRuntime(432):  at com.example.learning2.newUser$createNewUser.doInBackground(newUser.java:69)
12-25 03:48:51.915: E/AndroidRuntime(432):  at com.example.learning2.newUser$createNewUser.doInBackground(newUser.java:1)
12-25 03:48:51.915: E/AndroidRuntime(432):  at android.os.AsyncTask$2.call(AsyncTask.java:185)
12-25 03:48:51.915: E/AndroidRuntime(432):  at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
12-25 03:48:51.915: E/AndroidRuntime(432):  ... 4 more
12-25 03:48:54.045: I/Process(432): Sending signal. PID: 432 SIG: 9