gpt4 book ai didi

android - 如何使用android volley将数据发布到mysql

转载 作者:太空宇宙 更新时间:2023-11-03 11:40:17 24 4
gpt4 key购买 nike

只是我想制作一个注册页面,其中存储了我发布的用户数据,但没有数据存储在数据库中php文件

<?php 
if($_SERVER['REQUEST_METHOD']=='GET'){
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
$name = $_POST['name'];
$phonenum = $_POST['phonenum'];
$address = $_POST['addresstext'];
require_once('config.php');
$sql = "INSERT INTO users (name,username,email,password,phonenum,address) VALUES ('$name','$username','$email','$password','$phonenum','$address')";
$r = mysqli_query($dp,$sql);
if($r){
echo "Successfully Registered";
}
else{
echo "Could not register";
}
mysqli_close($dp);
}
?>

注册页面.java

public class DrSignup extends Activity implements View.OnClickListener{

public static final String REGISTER_URL = "http://giclub.esy.es/Register.php";

public static final String KEY_USERNAME = "username";
public static final String KEY_PASSWORD = "password";
public static final String KEY_EMAIL = "email";
public static final String KEY_NAME = "name";
public static final String KEY_PHONENUM = "phonenum";
public static final String KEY_ADDRESS = "address";

EditText usernametext,nametext,emailtext,phonenumtext,addresstext,passwordtext;

TextView link_login;
ImageView profileimg;
Button btn_signup;
private static int RESULT_LOAD_IMAGE = 1;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.drsingup);
link_login = (TextView) findViewById(R.id.link_login);
profileimg = (ImageView) findViewById(R.id.profileimg);
btn_signup = (Button) findViewById(R.id.btn_signup);
usernametext = (EditText) findViewById(R.id.username);
nametext = (EditText) findViewById(R.id.name);
emailtext = (EditText) findViewById(R.id.email);
phonenumtext = (EditText) findViewById(R.id.phonenumber);
addresstext = (EditText) findViewById(R.id.addresstext);
passwordtext = (EditText) findViewById(R.id.password);
link_login.setOnClickListener(this);
profileimg.setOnClickListener(this);
btn_signup.setOnClickListener(this);

}
@Override
public void onClick(View view) {
Intent I = new Intent(this,WelcomeActivity.class);
if (view == link_login)
{
startActivity(I);
finish();
}
else if (view == profileimg){
Intent i = new Intent(
Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, RESULT_LOAD_IMAGE);
}
else if (view == btn_signup){
registerUser();

}

}

private void registerUser() {
final String username = usernametext.getText().toString().trim();
final String password = passwordtext.getText().toString().trim();
final String email = emailtext.getText().toString().trim();
final String name = nametext.getText().toString().trim();
final String phonenum = phonenumtext.getText().toString().trim();
final String address = addresstext.getText().toString().trim();


StringRequest stringRequest = new StringRequest(Request.Method.POST, REGISTER_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(DrSignup.this,response,Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(DrSignup.this,error.toString(),Toast.LENGTH_LONG).show();
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put(KEY_USERNAME,username);
params.put(KEY_PASSWORD,password);
params.put(KEY_EMAIL, email);
params.put(KEY_NAME,name);
params.put(KEY_ADDRESS,address);
params.put(KEY_PHONENUM, phonenum);
return params;
}

};

RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);

if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = {MediaStore.Images.Media.DATA};

Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();

int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();

profileimg.setImageBitmap(BitmapFactory.decodeFile(picturePath));

}
}
}

没有东西被烘烤并且在 logcat 中没有显示错误有什么问题吗?

最佳答案

实际上你没有得到任何响应,因为在你的服务器端你正在比较请求方法和 get 但实际上你正在向服务器发送数据而不是从它检索所以改变它这样

<?php 
if($_SERVER['REQUEST_METHOD']=='POST'){
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
$name = $_POST['name'];
$phonenum = $_POST['phonenum'];
$address = $_POST['addresstext'];
require_once('config.php');
$sql = "INSERT INTO users (name,username,email,password,phonenum,address) VALUES ('$name','$username','$email','$password','$phonenum','$address')";
$r = mysqli_query($dp,$sql);
if($r){
echo "Successfully Registered";
}
else{
echo "Could not register";
}
mysqli_close($dp);
}
?>

关于android - 如何使用android volley将数据发布到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42414853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com