本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Parsing data from Database to Android using $_POST in php

发布于2023-09-20 21:25     阅读(1092)     评论(0)     点赞(9)     收藏(0)


我是 Android 编程新手,我正在制作一个应用程序,该应用程序具有服务器端数据库,其中包含药物名称列表,每种药物都有其特定的参考 ID 。现在我想要的是,当用户通过单击按钮搜索药物名称时,它应该运行数据库搜索,并根据药物是否存在于数据库中以及输入的特定参考 ID 来返回值。我应该怎么做才能做到这一点..我被参考 ID 问题困在这里,它不是获取参考 ID 只是查询药物名称?如果出错请提出您的建议。

//This is my SecondActivity.java

    public class SecondActivity extends AppCompatActivity implements View.OnClickListener {

    final String LOG = "SecondActivity";
        Button btnCheck;
        EditText etDrugname;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_second);
            etDrugname = (EditText) findViewById(R.id.etDrugname);
            btnCheck = (Button) findViewById(R.id.btnCheck);
            btnCheck.setOnClickListener(this);
        }

        @Override
        public void onClick(View v) {
            HashMap postData = new HashMap();
            String Drugname = etDrugname.getText().toString();
           postData.put("txtDrugname", Drugname);
            PostResponseAsyncTask task1 = new PostResponseAsyncTask(SecondActivity.this, postData,
                    new AsyncResponse() {
                        @Override
                        public void processFinish(String s) {
                            Log.d(LOG, s);
                            if (s.contains("Drug found")) {

   Intent intent = new Intent(SecondActivity.this, DisplayActivity.class);

   intent.putExtra("Drugname", etDrugname.getText().toString());

startActivity(intent);
                            } else {
                                Intent intent = new Intent(SecondActivity.this, Display2Activity.class);
                                intent.putExtra("Drugname", etDrugname.getText().toString());
                                startActivity(intent);
                            }
                        }
                    });
            task1.execute("http://www.e-bioinformatics.net/db/utipedia/test/login2.php");
        }
    }

// 这是我的 DisplayActivity.java,我希望结果出现在其中

`

ListView lv;
    //ListView PMID1;
    ArrayAdapter<String> adapter;
    String address = "http://www.e-bioinformatics.net/db/utipedia/test/login2.php";
    InputStream is = null;
    String line = null;
    String result = null;
    String[] data;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_display);

        TextView result = (TextView) findViewById(R.id.result);
        result.setText(getIntent().getExtras().getString("Drugname"));

        lv = (ListView) findViewById(PMID);


        StrictMode.setThreadPolicy((new StrictMode.ThreadPolicy.Builder().permitNetwork().build()));
        getData();


        adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, data);
        lv.setAdapter(adapter);


    private void getData() {
        try {
            URL url = new URL(address);
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("GET");


            is = new BufferedInputStream(connection.getInputStream());

        } catch (Exception e) {
            e.printStackTrace();
        }

        try {
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            StringBuilder sb = new StringBuilder();

            while ((line = br.readLine()) != null) {
                sb.append(line + "\n");
            }

            is.close();

            result = sb.toString();

        } catch (Exception e) {
            e.printStackTrace();
        }


        try {
            JSONArray ja = new JSONArray(result);
            JSONObject jo;
            data = new String[ja.length()];

            for (int i = 0; i < ja.length(); i++) {
                jo = ja.getJSONObject(i);
                data[i] = jo.getString("Referenceid");
            }

        } catch (JSONException e) {
            e.printStackTrace();
        }


    }

//this is my php script

<?php
    $input= $_POST['txtDrugname'];
    $input = strtolower($input);

if($input == ''){
echo "OOPS! It seems the input section is left blank. <br>please submit the <b>drug name.</b>";
}else{

/*  $ucaredb = mysql_connect("localhost", "ebioinfo_ucare", "admin_ucare")
    or die(mysql_error());*/

    $utidb = mysql_connect("localhost", "ebioinfo_uti0912", "uti@097")
    or die(mysql_error());



    mysql_select_db("ebioinfo_utipedia",$utidb);

    /*
    $sql_antibiotics = "SELECT * FROM antibiotics"; 
    $result_antibiotics = mysql_query($sql_antibiotics, $ucaredb);
    $sql_resistancegene = "SELECT * FROM resistancegene"; 
    $result_resistancegene = mysql_query($sql_resistancegene, $ucaredb);*/

    $sql_drug = "SELECT * FROM UTIPEDIA"; 
    $result_drug = mysql_query($sql_drug, $utidb);




    $i=0;


        while ($row_drug = mysql_fetch_array($result_drug))
        {
            $resistance_drug = $row_drug['Drugname'];
            $resistance_drug = strtolower($resistance_drug);

            $resistance_ref = $row_drug['Referenceid'];
            $part = explode(',', $resistance_ref);


            if($input == $resistance_drug)
            {

                    $i=1;
                    echo "Drug found";
                    echo "<h2><b>$input</b> is resistant against <i>Escherichia coli.</i></h2> <br>For further details see the following bibliography: ";
                    //echo "$resistance_ref";
                                        print(json_encode($resistance_ref));





            }


        }if($i !=1){echo "$input is not found in the database!";}




    }

解决方案


暂无回答



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.phpheidong.com/blog/article/548958/6e63ca49d1130ba8b83f/

来源:php黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

9 0
收藏该文
已收藏

评论内容:(最多支持255个字符)