sql >> データベース >  >> RDS >> Mysql

相互に依存しているmysqlデータベースから2つのスピナーを設定します

    このコードを試してください...

        public class MainActivity extends Activity {
    InputStream is=null;
    String result=null;
    String line=null;
    
    String[] roll_no,name;  
    
    Spinner spinner1,spinner2;
    
    
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    
    spinner1 = (Spinner) findViewById(R.id.spinner1);
    spinner2 = (Spinner) findViewById(R.id.spinner2);
    final List<String> list1 = new ArrayList<String>();
    final List<String> list2 = new ArrayList<String>();
    
    Button b=(Button) findViewById(R.id.button1);
    
    b.setOnClickListener(new View.OnClickListener() {
    
    @Override
    public void onClick(View v)
    {
                    // TODO Auto-generated method stub
    
    try
    {
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://10.0.2.2/spinner.php");
    HttpResponse response = httpclient.execute(httppost);
    Log.e("Fail 1", "3");
    
    HttpEntity entity = response.getEntity();
    Log.e("Fail 1", "4");
    
    is = entity.getContent();
    Log.e("Pass 1", "connection success ");
    }
    catch(Exception e)
    {
    Log.e("Fail 1", e.toString());
    Toast.makeText(getApplicationContext(), "Invalid IP Address",Toast.LENGTH_LONG).show();
    finish();
    }    
    
    
    try
    {
    BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
    StringBuilder sb = new StringBuilder();
    while ((line = reader.readLine()) != null)
    {
    sb.append(line + "\n");
    }
    is.close();
    result = sb.toString();
    }
    catch(Exception e)
    {
    Log.e("Fail 2", e.toString());
    }    
    
    
    try
    {
    JSONArray JA=new JSONArray(result);
    JSONObject json= null;
    roll_no = new String[JA.length()];       
    name = new String[JA.length()];
    
    for(int i=0;i<JA.length();i++)
    {
    json=JA.getJSONObject(i);
    roll_no[i] = json.getString("roll_no");
    name[i]=json.getString("name");
    }
    Toast.makeText(getApplicationContext(), "sss",Toast.LENGTH_LONG).show();
    
    for(int i=0;i<roll_no.length;i++)
    {
    list1.add(roll_no[i]);
    list2.add(name[i]);
    }
    
    spinner_fn();
    
    }
    catch(Exception e)
    {
    
    Log.e("Fail 3", e.toString());
    //login.this.finish();
    
    }
    }
    });
    
    }
    
    
    private void spinner_fn() {
    // TODO Auto-generated method stub
    
    ArrayAdapter<String> dataAdapter1 = new ArrayAdapter<String>(getApplicationContext(),
                                    android.R.layout.simple_spinner_item, roll_no);
    dataAdapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner1.setAdapter(dataAdapter1);
    
    
    ArrayAdapter<String> dataAdapter2 = new ArrayAdapter<String>(getApplicationContext(),
                                    android.R.layout.simple_spinner_item, name);
    dataAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(dataAdapter2);
    
    
    spinner1.setOnItemSelectedListener(new OnItemSelectedListener()
    {
    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1,int position, long id)
    {
    // TODO Auto-generated method stub
    
    spinner2.setSelection(position);
    
    }
    
    @Override
    public void onNothingSelected(AdapterView<?> arg0)
    {
    // TODO Auto-generated method stub
    }
    
    });
    
    
    spinner2.setOnItemSelectedListener(new OnItemSelectedListener() {
    
    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1,int position, long arg3) {
    // TODO Auto-generated method stub
    
    spinner1.setSelection(position);
    
    }
    
    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
    // TODO Auto-generated method stub
    }
    });
    
    }
    

    Androidmanifestに許可を与えることを忘れないでください:

     <uses-permission android:name="android.permission.INTERNET"/>
    

    そしてあなたのspinner.phpファイル:

      <?php
    $host='127.0.0.1';
    $uname='root'_name;
    $pwd='password';
    $db='android';
    $con = mysql_connect($host,$uname,$pwd) or die("connection failed");
    mysql_select_db($db,$con) or die("db selection failed");
    $r=mysql_query("select * from class",$con);
    while($row=mysql_fetch_array($r))
    {
    $cls[]=$row;
    //echo $fin."<br>";
    }
    print(json_encode($cls));
    mysql_close($con);
    ?>
    


    1. 平均的なSQLを見つける

    2. PDO出力utf8インサート

    3. mysqlのグループSQL問題ごとの上位N

    4. 2行の値を1つに結合します