Я пытаюсь отправить имя = zaeem на мою сторону PHP-сервера, но когда я отправлю его с android, я ничего не получил на стороне php. Мой PHP-код находится на бесплатном хостинге. ниже мой Android и PHP-код.Почему данные не получены в PHP, когда я отправляю его с Android?
этот код для запроса GET
protected String doInBackground(Void... params)
{
String responseData = "";
InputStream inputStream = null;
HttpURLConnection urlConnection = null;
Integer result = 0;
try {
/* forming th java.net.URL object */
URL url = new URL("http://za*******pk/testregister.php/");
urlConnection = (HttpURLConnection) url.openConnection();
/* optional request header */
// urlConnection.setRequestProperty("Content-Type", "application/json");
/* optional request header */
// urlConnection.setRequestProperty("Accept", "application/json");
/* for Get request */
urlConnection.setRequestMethod("GET");
DataOutputStream wr = new DataOutputStream(
urlConnection.getOutputStream());
wr.writeBytes("name=zaeem");
wr.flush();
wr.close();
int statusCode = urlConnection.getResponseCode();
Log.d("code", statusCode + "");
/* 200 represents HTTP OK */
if (statusCode == 200) {
inputStream = new BufferedInputStream(urlConnection.getInputStream());
responseData = convertInputStreamToString(inputStream);
result = 1; // Successful
} else {
result = 0; //"Failed to fetch data!";
}
} catch (Exception e) {
Log.d("exception", e.getLocalizedMessage());
}
return responseData;
}
Этот код для запроса POST
частный класс MyTaskPost расширяет AsyncTask {
@Override
protected String doInBackground(Void... params) {
String responseData = "";
InputStream inputStream = null;
HttpURLConnection urlConnection = null;
Integer result = 0;
try {
/* forming th java.net.URL object */
URL url = new URL("http://za****e.pk/testregister.php");
urlConnection = (HttpURLConnection) url.openConnection();
/* optional request header */
//urlConnection.setRequestProperty("Content-Type", "application/json");
/* optional request header */
// urlConnection.setRequestProperty("Accept", "application/json");
/* for Get request */
urlConnection.setRequestMethod("POST");
urlConnection.setDoInput(true);
urlConnection.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(
urlConnection.getOutputStream());
wr.writeBytes("name=zaeem");
wr.flush();
wr.close();
int statusCode = urlConnection.getResponseCode();
Log.d("code", statusCode+"");
/* 200 represents HTTP OK */
if (statusCode == 200) {
Toast.makeText(getApplicationContext(),"200",Toast.LENGTH_SHORT).show();
inputStream = new BufferedInputStream(urlConnection.getInputStream());
responseData = convertInputStreamToString(inputStream);
result = 1; // Successful
}else{
result = 0; //"Failed to fetch data!";
}
} catch (Exception e) {
Log.d("exception", e.getLocalizedMessage());
}
return responseData;
}
И мой PHP код на стороне is (Это размещение на бесплатном хостинге)
$name1=$_GET['name'];
$name1=$_POST['name'];
$name1=$_REQUEST['name'];
$con = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
// selecting database
mysql_select_db(DB_DATABASE);
$result = mysql_query("INSERT INTO gcm_users(name, email, gcm_regid,created_at) VALUES('$name1', 'email', 'longtext', NOW())");
$result = mysql_query("SELECT * FROM gcm_users WHERE id = 1") or die(mysql_error());
if (mysql_num_rows($result) > 0)
{
echo 'more than 1 user';
}
Когда я использую метод POST, я получаю код 200, но все еще данные не добавляются в базу данных.
Является ли ваш код в php работоспособным? –
@SyedTayyabAbbas $ name1 = $ _ GET ['name']; $ name1 = $ _ POST ['name']; $ name1 = $ _ REQUEST ['name']; $ con = mysql_connect (DB_HOST, DB_USER, DB_PASSWORD); // выбор базы данных \t mysql_select_db (DB_DATABASE); \t $ result = mysql_query ("INSERT INTO gcm_users (имя, адрес электронной почты, gcm_regid, created_at) VALUES ('$ name1', 'email', 'longtext', NOW())"); \t echo 'shown'; –
- это база данных, измененная этим кодом. –