2016-06-06 12 views
-3

Ich versuche, SESSION oder ohne zu verwenden. Vielleicht habe ich Probleme mit SESSION. In phpMyAdmin verwende ich userid int(11) auto_increment.Wie bekomme ich die user_id in der Datenbank mit PHP?

Alles, was mit der POST-Methode erstellt wurde, funktioniert.

<?php 
session_start();  
$con = mysqli_connect("mysql11.000webhost.com", "a7083778_user",  "abcd12734", "a70830778_data"); 

$username = $_POST["username"]; 
$password = $_POST["password"]; 

$statement = mysqli_prepare($con, "SELECT * FROM user WHERE username = ? AND password = ?"); 
mysqli_stmt_bind_param($statement, "ss", $username, $password); 
mysqli_stmt_execute($statement); 

mysqli_stmt_store_result($statement); 
mysqli_stmt_bind_result($statement, $userID, $name, $age ,$username, $password, $userPoints); 

$response = array(); 
$response["success"] = false; 
$_SESSION["userid"] = $userID; 
while(mysqli_stmt_fetch($statement)){ 
    $response["success"] = true; 
$response["userID"] = $_SESSiON["userid"]; 
    $response["name"] = $name; 
    $response["age"] = $age; 
    $response["username"] = $username; 
    $response["password"] = $password; 
$response["userPoints"] = $userPoints; 
} 

echo json_encode($response); 
?> 
+0

Sie eine eindeutige ID wollen? Frage ist ziemlich unklar – Shubhank

+0

@Shubhank Sori es ist meine erste Frage, Ja, ich brauche die eindeutige ID (erstellt in der Datenbank, wo ich auto_incrementation verwenden), um in Android-App QR-Code für jeden Benutzer einzigartig –

+0

Bitte beachten Sie, dass unverheiratet/Klartext Passwörter gelten als schlechte Sicherheitspraxis. Sie sollten sie mit einem geeigneten starken Algorithmus hashen. – halfer

Antwort

0

Bitte versuchen Sie dies, ich glaube, es wird funktionieren Sie

<?php 
 
session_start();  
 
$conn = new mysqli("mysql11.000webhost.com", "a7083098_user", "abcd1234", "a7083098_data"); 
 
$username = $_POST["username"]; 
 
$password = $_POST["password"]; 
 
$qry = "SELECT * FROM user WHERE username = $username AND password = $password"; 
 
$result = $conn->query($qry); 
 
$response = array(); 
 
while($row = $result->fetch_assoc()) 
 
{ 
 
\t $response["success"] = true; 
 
\t $response["userID"] = $row['userId']; 
 
\t $_SESSiON["userid"] = $response["userID"]; //Store userId in session 
 
\t $response["name"] = $row['name']; 
 
\t $response["age"] = $row['age']; 
 
\t $response["username"] = $row['username']; 
 
\t $response["password"] = $row['password']; 
 
\t $response["userPoints"] = $row['userPoints']; 
 
} 
 
echo json_encode($response); 
 
session_destroy(); 
 

 
?>

+0

Vielen Dank für Ihren Kommentar, aber ich habe ein Problem Schwerwiegender Fehler: Rufen Sie eine Memberfunktion fetch_assoc() auf einem Nicht-Objekt in /home/a7083098/public_html/Login.php in Zeile 9 –

+0

Sir, wenn Sie falschen Benutzernamen und Passwort eingeben , dann wird dieser Fehler kommen. –

+0

Da, wenn keine Daten aus der Datenbank abgerufen werden, wird $ result-> fetch_assoc() diesen Fehler anzeigen. –