2017-11-27 2 views
0

にAndroidアプリからのデータを送信することはできません私は私のアプリでこのコードを作った:がサーバー

public class human_Adding_Items extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_human__adding__items); 
    final EditText humanButtonadd1 = (EditText) findViewById(R.id.imageButton1); 
    final EditText humanButtonadd2 = (EditText) findViewById(R.id.imageButton2); 
    final Button humanButtonadd3 = (Button) findViewById(R.id.imageButton3); 
    final Button humanButtonadd4 = (Button) findViewById(R.id.imageButton4); 
    final Button humanButtonadd5 = (Button) findViewById(R.id.imageButton5); 
    final Button humanButtonadd6 = (Button) findViewById(R.id.imageButton6); 

    humanButtonadd3.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      humanButtonadd3.setBackgroundResource(R.mipmap.item_button); 
      humanButtonadd4.setVisibility(View.VISIBLE); 

     } 
    }); 
    humanButtonadd4.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      humanButtonadd4.setBackgroundResource(R.mipmap.item_button); 
      humanButtonadd5.setVisibility(View.VISIBLE); 

     } 
    }); 
    humanButtonadd5.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      humanButtonadd5.setBackgroundResource(R.mipmap.item_button); 
      humanButtonadd6.setVisibility(View.VISIBLE); 

     } 
    }); 
    humanButtonadd6.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      humanButtonadd6.setBackgroundResource(R.mipmap.item_button); 

     } 
    }); 
    Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT+1:00")); 
    final Date currentLocalTime = cal.getTime(); 
    final DateFormat date = new SimpleDateFormat("HH:mm a"); 
    date.setTimeZone(TimeZone.getTimeZone("GMT+1:00")); 

    final String localTime = date.format(currentLocalTime); 
    final Button b = (Button) findViewById(R.id.ConfirmButtton); 
    b.setOnClickListener(new View.OnClickListener(){ 

     @Override 
     public void onClick(View v) { 
      final String url = "http://192.168.43.27/app_site/api/post.php"; 
      StringRequest sq = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 

       } 
      }, new Response.ErrorListener() { 
       @Override 
       public void onErrorResponse(VolleyError error) { 

       } 
      }) { 
       protected Map<String, String> getParams(){ 
        Map<String, String> parr = new HashMap<String, String>(); 
        parr.put("text1", humanButtonadd1.getText().toString()); 
        parr.put("text2", humanButtonadd2.getText().toString()); 
        return parr; 
       } 
      }; 
     } 
    }); 
} 

とサーバpost.php

<?php 
$conn = mysqli_connect("localhost","root","","app_db") 
or die("Error " . mysqli_error($conn)); 
$m_text1 = ""; 
$m_text2 = ""; 
// recieved from app 
$m_text1 = $_POST['text1']; 
$m_text2 = $_POST['text2']; 
echo "Response: ".$m_text1." "; 
$sql_query = "INSERT INTO mytab (text1,text2) VALUES ('$m_text1','$m_text2')"; 
mysqli_close($conn); 
?> 

に、この私のコード私は、テキストデータを送信しようアプリから、サーバに、それは何も... :( を起こりませんし、私はなぜ? uはplsは私を助けることができる ところで最後のファイルpost.phpには、次のエラーを示して理解していない?

注意:未定義のインデックス: Cにおけるテキスト1:\ XAMPP \ htdocsに\ app_site \ API \ post.phpライン上の13

注意:未定義のインデックス: Cでテキスト2:\ XAMPP \ htdocsに\ app_site \ APIローカルサーバー「XAMPP」をuseing \さわやかページの行にpost.php 14

しかし、データベース内の鋼の挿入テキスト1とテキスト2 PSイム、多分これは問題でしょうか?サーバーとデータベース と通信するために

+0

サーバーへのアプリからそれを作るの要求ですか? – Philip556677

+1

コードは[example](https://developer.android.com/training/volley/simple.html)とは異なるようです。キューに追加したり、作成したりすることはありません。 – FirstOne

+0

それは、サーバと通信しているかどうかわからない問題ですが、私のdbにテキストデータを送信します:( –

答えて

-1

使用ボレーは自分dependecyでこれを追加し、メインのGradleファイルアプリGradleのファイルで、その後

allprojects { 
    repositories { 
     jcenter() 
     maven { url 'https://maven.google.com' } 
    } 
} 

を追加するには、この

を追加

compile 'com.mcxiaoke.volley:library:1.0.19' 
annotationProcessor 'com.github.bumptech.glide:compiler:4.3.1' 

これはあなたがチュートリアルのgoogleに従うことができると信頼できると信じています

https://developer.android.com/training/volley/index.html

+0

はい、私はボレーを使用しています –