Hi Pascal,
mit Anmeldung meine ist da Login. Der User muss sich bei meiner App anmelden und dabei seine E-Mail und Passwort eintragen. Parallel lasse ich seine E-Mail speichern mit UserSessionManager.
Ich schicke euch meine Code zu.
Mit einer festen Variablen in der PHP werden die Daten in der MySQL ausgegeben. Siehe Code.
Code Java:
package net.....;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.Html;
import android.widget.TextView;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.HttpClientStack;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.Volley;
import net.nevita. ... .R;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.HashMap;
public class UserActivity extends AppCompatActivity {
UserSessionManager session;
TextView textInfo;
RequestQueue queue;
// private String email;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_user);
textInfo = findViewById(R.id.textInfos);
queue = Volley.newRequestQueue(this);
jsonParse();
}
private void jsonParse() {
String url_post = "IP/UserInfo.php";
final JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url_post, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
JSONArray jsonArray = response.getJSONArray("infos");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject infos = jsonArray.getJSONObject(i);
String email = infos.getString("email");
String firstname = infos.getString("firstname");
String lastname = infos.getString("lastname");
int age = infos.getInt("age");
String gender = infos.getString("gender");
//textInfo.append("Email: " + email + ",\nVorname: " + firstname + ",\nNachname: " + lastname + ", \nAlter: " + String.valueOf(age) + ",\nGeschlecht: " + gender);
textInfo.append(Html.fromHtml(
"<br><p> Email: " + email + "</p>" +
"<p> Vorname: " + firstname + "</p>" +
"<p> Nachname: " + lastname + "</p>" +
"<p> Alter: " + String.valueOf(age) + "</p>" +
"<p> Geschlecht: " + gender + "</p>"));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
});
queue.add(request);
}
}
Code PHP:
<?php
// require "UserDBInfo.php"
$servername = " ... ";
$username = " ... ";
$password = " ... ";
$dbname = " ... ";
$conn = new mysqli($servername, $username, $password, $dbname);
$infos["infos"] = array();
// $email_user = $_POST["email"];
// $password_user = $_POST["password"];
// test user
$email_user = "...@....com";
// $password_user = " ... ";
$sql_query = "SELECT email, firstname, lastname, age, gender FROM userDB WHERE email = '$email_user'";
// $check = mysqli_fetch_array(mysqli_query($conn, $sql_query));
$stmt = $conn->prepare($sql_query);
$stmt->execute();
$stmt->bind_result($email, $firstname, $lastname, $age, $gender);
while($stmt->fetch()){
$temp = [
'email' => $email,
'firstname' => $firstname,
'lastname' => $lastname,
'age' => $age,
'gender' => $gender
];
array_push($infos["infos"], $temp);
echo json_encode($infos);
}
mysqli_close($con);
?>
Ich muss die Variable "email" in Java zu PHP schicken.
Gruß
Alex
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.