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

php値をjavaに保存します

    コメントに基づいて、私は新しい答えを作成しています。私の答えは両方とも基本的に正しいからです。例を挙げて、Android( apache commons 4.5.1 )およびphp5.6。どちらのバージョン(4.5.1、5.6)も要件ではなく、現在使用しているものだけです。

    例では、情報というmysqlテーブルがあると想定しています。 フィールドステータス time_in AUTO_INCREMENTとマークされた別のフィールドがあります 。

    Javaパート

    元の::doInBackground(String ... params) あなたが持つことができる機能

    HttpClient client = HttpClients.createDefault();
    HttpPost httpPost = new HttpPost("http://localhost/so/sendrequest/addInformation.php");
    
    try{
       List<NameValuePair> data = new ArrayList<NameValuePair>(2);
       data.add(new BasicNameValuePair("status", "ok"));
       data.add(new BasicNameValuePair("timein", "12:55"));
       httpPost.setEntity(new UrlEncodedFormEntity(data));
       String response = EntityUtils.toString(client.execute(httpPost).getEntity());
       System.out.println(response); //here you have your insertid
    }catch(ClientProtocolException e){
       // TODO Auto-generated catch block
    }catch(IOException e){
       // TODO Auto-generated catch block
    }
    

    ネイティブJavaに基づく

    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List;
    

    およびapachecommonsは、Androidライブラリに含まれている必要があります(ダウンロードリンク そうでない場合)

    import org.apache.http.NameValuePair;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.HttpClients;
    import org.apache.http.message.BasicNameValuePair;
    import org.apache.http.util.EntityUtils;
    

    PHPパート

    addInformation.php

    <?php
    
    class AddInformation
    {
    
       function response(){
          /** @var mysqli $con */
          require_once('dbConnect.php'); //$con = new mysqli('127.0.0.1', 'root', '', 'so');
          $status = $con->real_escape_string($_POST['status']);
          $timein = $con->real_escape_string($_POST['timein']);
    
          $con->query("INSERT INTO information (status, time_in) VALUES ('$status', '$timein')");
          echo $con->insert_id;
       }
    }
    
    $ai = new AddInformation();
    $ai->response();
    


    1. 句間の変換から結合への変換

    2. MariaDBと外部データ

    3. pdoexecuteで同じパラメータ値を複数回割り当てる

    4. フォームへの二重投稿を防ぐ方法は何ですか? (PHP)