申し訳ありませんが、私は初心者で、私のPCにエミュレータをインストールするためのVTテクノロジーを持っていないので、モバイルでAndroidアプリケーションをテストすることができますあなたのアンドロイドアプリケーションがあなたのPCにあるlocalhostのmysqlサーバーに接続されている間、電話。mysqlに接続している間にモバイルでAndroidアプリケーションをテストすることは可能です
私がしようとしていますが、私のコードは
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET"/>
これは私が非同期タスクを使用していた私のBackgroundWorkerクラスのコードであるよりも、これが可能であれば私のアプリケーションは、MySQL
に接続されていません
protected String doInBackground(String... params) {
String method = params[0];
String weburl = "http://192.168.1.103/And/receive.php"; // this is the localhost pc address
if (method.equals("login")) {
String username = params[1];
String password = params[2];
try {
URL jv = new URL(weburl);
HttpURLConnection httpURLConnection = (HttpURLConnection) jv.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);
OutputStream OS = httpURLConnection.getOutputStream();
BufferedWriter bf = new BufferedWriter(new OutputStreamWriter(OS, "UTF-8"));
String data = URLEncoder.encode("user", "UTF-8") + "=" + URLEncoder.encode(username, "UTF-8") + "&"
+ URLEncoder.encode("password", "UTF-8") + "=" + URLEncoder.encode(password, "UTF-8");
bf.write(data);
bf.flush();
bf.close();
OS.close();
InputStream is = httpURLConnection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is, "iso-8859-1"));
String result = "";
String line = "";
while ((line = br.readLine()) != null) {
result += line;
}
bf.close();
is.close();
httpURLConnection.disconnect();
return result;
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
これがメインの活動
内部にある私のアンドロイドテキストフィールドのコードですpublic void Login(View v){
String username=usernameEr.getText().toString();
String password=passwordEr.getText().toString();
String type="login";
BackgroundWorker BgWorker= new BackgroundWorker(this);
BgWorker.execute(type,username,password);
}
これは、あなたがポートアドレスが含まれていない、私のPHPコードあなたのURLで
<?php
include "connection.php";
$fname=$_POST['user'];
$password=$_POST['password'];
$row=mysql_query("SELECT * FROM tayyab where username='$fname' AND password='$password'") or die("query failed");
$row_count=mysql_num_rows($row);
if($row_count>=1){
echo "You have been logged in!";
}
else{
echo "You have been logged out!";
}
?>
check plz @RC。私は投稿 –
@RCを編集しました。私はちょうど私のためのSQLインジェクションを今働いていないコードをテストしています –