2016-12-05 11 views
0

まだ開発中のAndroid android project私は本当に助けが必要です、私の問題は自分のシステムにログインしているユーザのユーザIDを取得できなかったので、レコードを置くとユーザーIDがデータに添付されます。私のシステムで自分のデータを出力するためにこれをしたいのです。誰かが助けることを願ってその唯一のPHPコードは助けてくれる人に感謝します。ログのPHPでユーザーのユーザーIDを取得する方法は?

<?php 
    // Connection Details altered to hide actual values. 
    $con = mysqli_connect("localhost", "db_user", "db_password", "db_name"); 

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

    $sql = "SELECT * FROM tbl_userinfo WHERE username = '$username' AND password='$password' LIMIT 1"; 
    $res = mysqli_query($con,$sql); 


    $response = array(); 
    $response["success"] = false; 

    $row = mysqli_fetch_array($res); 


    if(mysqli_num_rows($res)> 0){ 

     $response["success"] = true; 
     session_start(); 
     $_SESSION['user_id'] =$userID; 
    } 

    echo json_encode($response); 

?> 

のthatsで、ここに...データを保存するための

<?php 
    session_start(); 
    $userID =""; 
    // Connection Details altered to hide actual values. 
    $con = mysqli_connect("localhost", "db_user", "db_password", "db_name"); 

    if(!isset($_SESSION['user_id'])){ 

    $userID = $_SESSION['user_id']; 
    $checkdate = $_POST["checkdate"]; 
    $checkno = $_POST["checkno"]; 
    $datepaid = $_POST["datepaid"]; 
    $clientname = $_POST["clientname"]; 
    $bank = $_POST["bank"]; 
    $amount = $_POST["amount"]; 
    $status = "UNFINISHED"; 
    $statement = mysqli_prepare($con, "INSERT INTO tbl_checkinfo (user_id,checkno, checkdate, datepaid, clientname, bank, amount, status) VALUES (?,?, ?, ?, ?,?,?,?)"); 
    mysqli_stmt_bind_param($statement, "iissssis", $userID, $checkno, $checkdate, $datepaid, $clientname, $bank, $amount, $status); 
    mysqli_stmt_execute($statement); 

    $response = array(); 
    $response["success"] = false; 

    if($statement){ 
     $response["success"] = true; 
    } 



    echo json_encode($response); 

} 

?> 

をだとユーザーデータを表示します。

<?php 
    // Connection Details altered to hide actual values. 
    $con = mysqli_connect("localhost", "db_user", "db_password", "db_name"); 

    $checkdate = $_POST["checkdate"]; 
    $checkno = $_POST["checkno"]; 
    $datepaid = $_POST["datepaid"]; 
    $clientname = $_POST["clientname"]; 
    $bank = $_POST["bank"]; 
    $amount = $_POST["amount"]; 
    $status = "UNFINISHED"; 
    $sql = "Select * from tbl_checkinfo"; 
    $result = mysqli_query($con, $sql); 
    // $statement = mysqli_prepare($con, "Select * from tbl_checkinfo"); 
    // mysqli_stmt_execute($statement); 
    // mysqli_stmt_store_result($statement); 
    // mysqli_stmt_bind_result($statement, $user_id, $checkdate, $checkno,  $datepaid, $clientname, $bank, $amount, $status); 


    $response = array(); 
    $info=array(); 
    $flag = array(); 
    $response["success"] = false; 


if(mysqli_num_rows($result) > 0) { 
    while($row = mysqli_fetch_array($result)) 
    { 
     $flag[checkdate]=$row[checkdate]; 
     $flag[checkno]=$row[checkno]; 
     $flag[datepaid]=$row[datepaid]; 
     $flag[clientname]=$row[clientname]; 
     $flag[bank]=$row[bank]; 
     $flag[amount]=$row[amount]; 
     $flag[status]=$row[status]; 
     array_push($info, $flag); 
    } 
     $response["success"] = true; 
     $response["message"] = $info; 
     echo json_encode($response); 
} 
else 
{ 
     $response["success"] = 0; 
     $response["message"] = "No entries yet"; 
     echo json_encode($response); 
} 

?> 

答えて

0

まず、パブリックフォーラムで質問を投稿するときは、コードからホスト、DB名、パスワードなどを削除してください。あなたは$ユーザーIDの変数を定義し

if(mysqli_num_rows($res)> 0){ 
     $response["success"] = true; 
     $response["user_id"] = $row[USER_ID_INDEX]; 
     session_start(); 
     $_SESSION['user_id'] =$row[USER_ID_INDEX]; 
    } 
0

は、あなたが適切に割り当てることがあります:)

第二に、print_r($row)にしようとすると、インデックスが使用可能なユーザーIDである上に表示し、あなたのコードでは、この行を追加します。セッション変数に値、

if(mysqli_num_rows($res)> 0){ 

     $response["success"] = true; 
     session_start(); 
     $_SESSION['user_id'] =$row[USER_ID_INDEX]; 
    } 
+0

どうすれば動的にすることができますか? –

+0

動的にするには、USER_ID_INDEXをデータベーステーブルの列名で置き換えます。 –

+0

私のデータを保存する際にエラーが見つかりました。助けて? –

0

$row['user_id_in_table']はあなたにIDを与える必要があります。

関連する問題