我在网站上尝试以下示例,其中我尝试在MYSQL中插入数据。问题是当我输入我的数据并按下REGISTER按钮时,几秒钟后我的应用程序崩溃并且数据库中没有插入数据。这是我的代码。
u_details_activity.java:
public class u_details_Activity extends AppCompatActivity {
EditText mname;
EditText memail;
EditText mpass, mconf;
private static final String REGISTER_URL = "http://restaurant.zpcoder.mobi/u_data_insert.php";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_u_details_);
mname = findViewById(R.id.name);
memail = findViewById(R.id.email);
mpass = findViewById(R.id.password);
mconf = findViewById(R.id.confirm_password);
Button rg_register = findViewById(R.id.reg_register);
rg_register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
registerUser();
} catch (Exception e) {
Toast.makeText(u_details_Activity.this, "Registration Failed", Toast.LENGTH_SHORT).show();
}
}
});
}
String username, email, password,confirm,lon, lat, name, address, web, contact, remail, open, close;
private void registerUser() {
username = mname.getText().toString();
email = memail.getText().toString();
password = mpass.getText().toString();
confirm = mconf.getText().toString();
Bundle bundle = getIntent().getExtras();
lon = bundle.getString("lon");
lat = bundle.getString("lat");
name = "No records";
address = "No records";
web = "No records";
contact = "No records";
remail = "No records";
open = "No records";
close = "No records";
if (password.equals(confirm)) {
register(username, password, email, lon, lat, name, address, web, contact, remail, open, close);
} else {
Toast.makeText(this, "Passwords Doesnt Match. Try Again", Toast.LENGTH_SHORT).show();
mpass.setText("");
mconf.setText("");
}
}
private void register(String username, String password, String email, String lon, String lat, String name, String address, String web, String contact, String remail, String open, String close) {
String urlSuffix = "?username=" + username + "&password=" + password + "&email=" +email
+ "&lon=" + lon+ "&lat=" + lat + "&name=" + name + "&address=" + address + "&web=" + web + "&contact=" + contact + "&remail=" + remail + "&open=" + open + "&close=" + close +"";
class RegisterUser extends AsyncTask<String, Void, String> {
ProgressDialog loading;
@Override
protected void onPreExecute() {
super.onPreExecute();
loading = ProgressDialog.show(u_details_Activity.this, "Please Wait...", null, true, true);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
loading.dismiss();
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
if(s.equals("Registration Successfull !!")) {
mname.setText("");
memail.setText("");
mpass.setText("");
mconf.setText("");
}
}
@Override
protected String doInBackground(String... params) {
String s = params[0];
BufferedReader bufferReader;
try {
URL url = new URL(REGISTER_URL + s);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
bufferReader = new BufferedReader(new InputStreamReader(con.getInputStream()));
String result;
result = bufferReader.readLine();
return result;
} catch (Exception e) {
return null;
}
}
}
RegisterUser ur = new RegisterUser();
ur.execute(urlSuffix);
}
}
u_data_insert.php:
<?php
define('HOST','localhost');
define('USER','zprestau01u');
define('PASS','ZPrestau#01U$100');
define('DB','zprestau01');
$con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect');
$username = $_GET['username'];
$password = $_GET['password'];
$email = $_GET['email'];
$lon = $_GET['lon'];
$lat = $_GET['lat'];
$name = $_GET['name'];
$address = $_GET['address'];
$web = $_GET['web'];
$contact = $_GET['contact'];
$remail = $_GET['remail'];
$open = $_GET['open'];
$close = $_GET['close'];
if($username == '' || $password == '' || $email == '')
{
echo 'Please Fill All Empty Fields';
}
else{
$sql = "SELECT * FROM demotable WHERE username='$username'";
$check = mysqli_fetch_array(mysqli_query($con,$sql));
if(isset($check)){
echo 'Username Already Exists, Try Another One';
}else{
$sql1 = "INSERT INTO demotable (username,password,email, lon, lat, name, address, web, contact, remail, open, close) VALUES('$username','$password','$email','$lon','$lat', '$name, '$address, '$web', '$contact', '$remail', '$open', '$close')";
if(mysqli_query($con,$sql1)){
echo 'Registration Successfull !!';
}
else{
echo 'Oops! Please Try Again!';
}
}
mysqli_close($con);
}
?>
你能告诉我我哪里做错了吗?