я пытаюсь заставить залп работать с php-скриптом, в основном отправлять некоторые данные через залп на php, затем выбирать из базы данных и возвращать результат, однако я изо всех сил пытаюсь даже получить переменные из android для передачи в php. Ошибки, которые я получаю, сигнализируют, что переменные равны нулю при запуске php, поэтому они не передаются должным образом
Вот ошибка php
PHP Notice: Undefined index: name
И когда я пытаюсь вернуть переменную name
возвращается как null
Вот php
$iName = $_POST['name'];
$iEmail = $_POST['email'];
$iPassword = $_POST['password'];
$iVerifyPassword = $_POST['verify_password'];$response = array('code' => "1", 'message' => $iName);
echo json_encode($response);
exit;
Вот соответствующий андроид
HashMap<String, String> params = new HashMap<String, String>();
params.put("name", sName);
params.put("email", sEmail);
params.put("password", sPassword);
params.put("verify_password", sVerifyPassword);
JsonObjectRequest req = new JsonObjectRequest(
jsonUrl, new JSONObject(params),
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
VolleyLog.v("Response:%n %s", response.toString(4));
int code = response.getInt("code");
String message = response.getString("message");
if (code == 1) {
//Success go to verify
Toast.makeText(getActivity().getApplicationContext(),
message,
Toast.LENGTH_LONG).show();
} else if (code == 2) {
Toast.makeText(getActivity().getApplicationContext(),
message,
Toast.LENGTH_LONG).show();
} else {
Toast.makeText(getActivity().getApplicationContext(),
"Network Error",
Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.e("Error: ", error.getMessage());
}
}
);
// add the request object to the queue to be executed
AppController.getInstance().addToRequestQueue(req, tag_json_obj);
JsonObjectRequest
не будет передавать ваши параметры на сервер, которые вызывают ваши проблемы. Такого рода вопросы задавали многие ребята, мой другой ответ может сделать вас более понятным, почему.
Других решений пока нет …