Android - 无法使用PHP在mysql中插入数据

时间:2018-04-01 11:55:07

标签: java android mysql

我在网站上尝试以下示例,其中我尝试在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);
        }
        ?>      

你能告诉我我哪里做错了吗?

0 个答案:

没有答案