sql >> Databáze >  >> RDS >> Mysql

Uložte hodnotu php do Java

Na základě komentářů vytvářím novou odpověď, protože obě mé odpovědi jsou v základu správné. Udělal jsem příklad práce s Androidem (apache commons 4.5.1 ) a php 5.6. Obě verze (4.5.1, 5.6) nejsou požadavky, jen to, co právě používám.

Příklad předpokládejme, že máte tabulku mysql nazvanou informace s poli stav , time_in a s dalším polem označeným jako AUTO_INCREMENT .

Java Part

v originále ::doInBackground(String ...params) funkce, kterou byste mohli mít

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
}

založené na nativní Javě

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

a apache commons, které by měly být součástí knihovny pro Android (odkaz ke stažení pokud ne)

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;

Část 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. Automatický import dat z mysql do solr

  2. MySQL Vyberte konkrétní sloupec

  3. Pomozte mi s tímto úplným vnějším připojením MySql (nebo sjednocením)

  4. MariaDB JSON_CONTAINS() Vysvětleno