Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Speichern Sie den PHP-Wert in Java

Basierend auf den Kommentaren erstelle ich eine neue Antwort, da meine beiden Antworten in den Grundlagen korrekt sind. Ich habe ein Beispiel erstellt, das mit Android (Apache Commons 4.5.1 ) arbeitet ) und php5.6. Beide Versionen (4.5.1, 5.6) sind keine Voraussetzungen, sondern nur die, die ich gerade verwende.

Nehmen wir beispielsweise an, Sie haben eine MySQL-Tabelle mit dem Namen Information mit Feldern Status , time_in und mit einem anderen Feld, das als AUTO_INCREMENT gekennzeichnet ist .

Java-Teil

im Original ::doInBackground(String ...params) Funktion, die Sie haben könnten

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
}

basierend auf nativem Java

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

und Apache Commons, die in der Android-Bibliothek enthalten sein sollten (Download-Link ). wenn nicht)

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-Teil

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();