使用android volley和php将波斯值发布到mysql
我试图用android volley库将波斯值发布到mysql,但它在我的数据库中发布的值如下:(ااØاØØ) 我的数据库排序规则是utf8\u波斯语\u ci 这是我的php代码:使用android volley和php将波斯值发布到mysql,php,android,mysql,android-volley,Php,Android,Mysql,Android Volley,我试图用android volley库将波斯值发布到mysql,但它在我的数据库中发布的值如下:(ااØاØØ) 我的数据库排序规则是utf8\u波斯语\u ci 这是我的php代码: <?php if($_SERVER['REQUEST_METHOD']=='POST'){ $Phone_Name = $_POST['Phone_Name']; $Customer = $_POST['Customer_non','utf8_decode']; $IMEI
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$Phone_Name = $_POST['Phone_Name'];
$Customer = $_POST['Customer_non','utf8_decode'];
$IMEI = $_POST['IMEI'];
$Mobile = $_POST['Mobile'];
$Status = $_POST['Status'];
$Fault = $_POST['Fault'];
$custfault = $_POST['custfault'];
$max_Cost = $_POST['max_Cost'];
$accesories = $_POST['accesories'];
require_once('dbConnect.php');
$sql = "INSERT INTO phone_in (Phone_Name,Customer_non,IMEI,Mobile,Status,Fault,max_Cost,accesories,custfault) VALUES ('$Phone_Name','$Customer','$IMEI','$Mobile','$Status','$Fault','$max_Cost','$accesories','$custfault')";
if(mysqli_query($con,$sql)) {
echo "Successfully Registered";
}else {
echo "Could not register";
}
} else {
echo 'error';
}
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
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 java.util.HashMap;
import java.util.Map;
public class DeviceAddActivity extends AppCompatActivity implements View.OnClickListener {
private static final String REGISTER_URL = "http://192.168.43.190/entezam/addphone.php";
public static final String KEY_CUSTNAME = "Customer_non";
public static final String KEY_PHONENAME = "Phone_Name";
public static final String KEY_IMEI = "IMEI";
public static final String KEY_Mobile ="Mobile";
public static final String KEY_Status ="Status";
public static final String KEY_Fault = "Fault";
public static final String KEY_custfault ="custfault";
public static final String KEY_max_Cost = "max_Cost";
public static final String KEY_accesories ="accesories";
private EditText editTextName;
private EditText editTextPhoneName;
private EditText editTextIMEI;
private EditText editTextMobile;
private RadioButton ron;
private RadioButton roff;
private EditText editTextFault;
private EditText editTextCustfault;
private EditText editTextmaxCost;
private EditText editTextaccesories;
private Button buttonRegister;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_device_add);
editTextName = (EditText) findViewById(R.id.editTextcustname);
editTextPhoneName = (EditText) findViewById(R.id.editTextphonename);
editTextIMEI= (EditText) findViewById(R.id.editTextimei);
editTextMobile = (EditText) findViewById(R.id.etcontactno);
ron = (RadioButton) findViewById(R.id.rbon);
roff = (RadioButton) findViewById(R.id.rboff);
editTextFault = (EditText) findViewById(R.id.etiradzaheri);
editTextCustfault = (EditText) findViewById(R.id.etiradmoshtari);
editTextmaxCost = (EditText) findViewById(R.id.etmaxcost);
editTextaccesories = (EditText) findViewById(R.id.etaccesories);
buttonRegister = (Button) findViewById(R.id.buttonRegister);
buttonRegister.setOnClickListener(this);
}
private void registerUser(){
final String Customer_non = editTextName.getText().toString().trim();
final String Phone_Name = editTextPhoneName.getText().toString().trim();
final String IMEI = editTextIMEI.getText().toString().trim();
final String Mobile = editTextMobile.getText().toString().trim();
final String status;
if (ron.isChecked()) {
status = "1";
} else
status ="0";
final String fault = editTextFault.getText().toString().trim();
final String Custfault = editTextCustfault.getText().toString().trim();
final String maxCost = editTextmaxCost.getText().toString().trim();
final String accesories = editTextaccesories.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, REGISTER_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(DeviceAddActivity.this,response,Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(DeviceAddActivity.this,error.toString(),Toast.LENGTH_LONG).show();
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put(KEY_CUSTNAME,Customer_non );
params.put(KEY_PHONENAME,Phone_Name);
params.put(KEY_IMEI,IMEI);
params.put(KEY_Status,status);
params.put(KEY_Fault,fault);
params.put(KEY_custfault,Custfault);
params.put(KEY_max_Cost,maxCost);
params.put(KEY_accesories,accesories);
params.put(KEY_Mobile,Mobile);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
@Override
public void onClick(View v) {
if(v == buttonRegister){
registerUser();
}
}
}
尝试使用以下代码将UTF-8 post值编码到您的post服务中:
public String getBodyContentType() {
return "application/json; charset=" + getParamsEncoding();
}