I have a problem to solve: i've found a video tutorial that explain how to create a Register page in Android. In this video, the developer don't use a direct connetion to database through JDBC, but he use a page called conn.php for the database information, and a page called register.php for the register system with POST method:
conn.php:
<?php
$db_name = "database_name";
$mysql_username = "root";
$mysql_password = "";
$server_name = "localhost";
$conn = mysqli_connect($server_name, $mysql_username, $mysql_password, $db_name);
if($conn){
echo "Connection successful!";
}
else{
echo "Connection not working!";
}
?>
register.php
<?php
require "conn.php";
$nome = $_POST["Nome"];
$cognome = $_POST["Cognome"];
$indirizzo = $_POST["Indirizzo"];
$citta = $_POST["Citta"];
$stato_occhi = $_POST["Stato_Occhi"];
$note = $_POST["Note"];
$mysql_query = "INSERT INTO Richieste (Nome, Cognome, Indirizzo, Citta, Stato_Occhi, Note) VALUES ('$nome', '$cognome', '$indirizzo', '$citta', '$stato_occhi', '$note')";
if($conn->query($mysql_query)=== TRUE){
echo "Richiesta eseguita correttamente!";
}
else{
echo "Errore: " . $mysql_query . "<br>" . $conn->error;
}
$conn->close();
?>
BackgroundWorker.java
import android.app.AlertDialog;
import android.content.Context;
import android.os.AsyncTask;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
/**
* Created by ProgrammingKnowledge on 1/5/2016.
*/
public class BackgroundWorker extends AsyncTask<String,Void,String> {
Context context;
AlertDialog alertDialog;
BackgroundWorker (Context ctx) {
context = ctx;
}
@Override
protected String doInBackground(String... params) {
String type = params[0];
String register_url = "http://localhost/register.php";
if(type.equals("register")) {
try {
String nome = params[1];
String cognome = params[2];
String indirizzo = params[3];
String citta = params[4];
boolean stato_occhi = params[5];
String note = params[6];
URL url = new URL(register_url);
HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);
OutputStream outputStream = httpURLConnection.getOutputStream();
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream, "UTF-8"));
String post_data = URLEncoder.encode("Nome","UTF-8")+"="+URLEncoder.encode(nome,"UTF-8")+"&"
+URLEncoder.encode("Cognome","UTF-8")+"="+URLEncoder.encode(cognome,"UTF-8")+"&"
+URLEncoder.encode("Indirizzo","UTF-8")+"="+URLEncoder.encode(indirizzo,"UTF-8")+"&"
+URLEncoder.encode("Citta","UTF-8")+"="+URLEncoder.encode(citta,"UTF-8")+"&"
+URLEncoder.encode("Stato_Occhi","UTF-8")+"="+URLEncoder.encode(stato_occhi,"UTF-8")+"&"
+URLEncoder.encode("Note","UTF-8")+"="+URLEncoder.encode(note,"UTF-8");
bufferedWriter.write(post_data);
bufferedWriter.flush();
bufferedWriter.close();
outputStream.close();
InputStream inputStream = httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream,"iso-8859-1"));
String result="";
String line="";
while((line = bufferedReader.readLine())!= null) {
result += line;
}
bufferedReader.close();
inputStream.close();
httpURLConnection.disconnect();
return result;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
@Override
protected void onPreExecute() {
alertDialog = new AlertDialog.Builder(context).create();
alertDialog.setTitle("Login Status");
}
@Override
protected void onPostExecute(String result) {
alertDialog.setMessage(result);
alertDialog.show();
}
@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
}
Now i need to create the same project for a simple Java Application (not for android), but the class BackgroundWorker.java not working for normal java applications, what i'll must edit to make this class working for normal Java Application?