0
我正在制作一个我需要登录和注册的Android应用程序,我是一名编程初学者,我做了一些不显示任何结果或错误的工作。 `在Android Web服务中需要帮助
package com.example.user.appliication;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.HashMap;
public class RegisterActivity extends AppCompatActivity {
EditText ETname, ETusername, ETpassword, ETconfpas, ETrollnumber, ETemail;
Button RegisterButton;
StringRequest request;
RequestQueue queue;
String URL = "http://user.000webhostapp.com/folder/script.php";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
ETname = (EditText) findViewById(R.id.etName);
ETusername = (EditText) findViewById(R.id.etUsername);
ETpassword = (EditText) findViewById(R.id.etPassword);
ETconfpas = (EditText) findViewById(R.id.etConPass);
ETrollnumber = (EditText) findViewById(R.id.etRollnumber);
ETemail = (EditText) findViewById(R.id.etEmail);
queue = Volley.newRequestQueue(this);
RegisterButton = (Button) findViewById(R.id.regButton);
RegisterButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(ETname.getText().toString().matches("")||ETusername.getText().toString().matches("")||ETpassword.getText().toString().matches("")||ETconfpas.getText().toString().matches("")||ETrollnumber.getText().toString().matches("")||ETemail.getText().toString().matches("")){
Toast.makeText(RegisterActivity.this, "All fields required", Toast.LENGTH_SHORT).show();
}
else{
request = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
try {
JSONObject jsonObject = new JSONObject(s);
boolean success = jsonObject.getBoolean("success");
if(success){
String message = jsonObject.getString("message");
Intent i = new Intent(RegisterActivity.this, HomeActivity.class);
startActivity(i);
Toast.makeText(RegisterActivity.this, message, Toast.LENGTH_SHORT).show();
}
else {
String message = jsonObject.getString("message");
Toast.makeText(RegisterActivity.this, message, Toast.LENGTH_SHORT).show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
Toast.makeText(RegisterActivity.this, volleyError.toString(), Toast.LENGTH_SHORT).show();
}
}){
@Override
protected HashMap<String, String> getParams(){
HashMap<String,String> params = new HashMap<String, String>();
params.put("name",ETname.getText().toString());
params.put("username",ETusername.getText().toString());
params.put("password",ETpassword.getText().toString());
params.put("rollnumber",ETrollnumber.getText().toString());
params.put("email",ETemail.getText().toString());
return params;
}
};
queue.add(request);
}
}
});
}
} `
为registeration PHP脚本是
<?php
$response = array();
if (isset($_POST['user_name']) && isset($_POST['user_password']) &&
isset($_POST['user_fullname'])) {
// include db connect
require_once __DIR__ . '/connection.php';
$name = $_POST['name'];
$username = $_POST['username'];
$password = $_POST['password'];
$rollnumber = $_POST['rollnumber'];
$email = $_POST['email'];
$query = "INSERT INTO appusers(name ,username, password, rollnumber, email)
VALUES ('$name','$username','$password','$rollnumber','$email')";
// insert into db
$result = mysqli_query($con,$query);
//check if registration completed
if ($result) {
$response["success"] = true;
$response["message"] = "Registration completed";
// echo JSON response
echo json_encode($response);
}
else{
$response["success"] = false;
$response["message"] = "Rollnumber alreaday exist";
// echo JSON response
echo json_encode($response);
}
}
else{
$response["success"] = false;
$response["message"] = "Something went wrong";
// echo JSON response
echo json_encode($response);
}
?>
亚行停止,不显示在我运行此应用程序的任何错误响应,并没有将数据发送到我的数据库。
强烈建议你看看准备的语句,因为你当前打开的SQL注入。 –