2014-04-12 25 views
1

我在做一個使用登錄的小帳戶,現在我必須顯示ID誰登錄的名字。假設,我有兩個帳戶到我的數據庫中,因爲我打印他的名字時,顯示ID號。 1的名字,而我登錄使用ID號。 2你能告訴我發生了什麼事嗎?在那裏我猜想是錯誤的?如何使用ID顯示數據庫中的名稱?

這裏是我的change_setting_db.php

<?php 
$con=mysqli_connect("localhost","root","Bhawanku","members"); 
// Check connection 

if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 
$result = mysqli_query($con,"SELECT * FROM admin"); 
?> 

這裏是我general_setting.php

<div id="change_name"> 
    <label><strong>Name: </strong></label> 
     <?php 
     include('change_setting_db.php'); 

     while($row = mysqli_fetch_array($result)) 
     { 
      echo $row['first_name']." ".$row['last_name']; 
     } 
     ?> 
     <a id="display_float" href="change_name.php">Edit</a> 
    </div><hr> 

EDITED

我試過,但它的不工作..

<?php 
$con=mysqli_connect("localhost","root","Bhawanku","members"); 
// Check connection 

if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

$result = mysqli_query($con,"SELECT * FROM admin"); 
if ($row = mysqli_fetch_array($result)) { 
    $id=$row['id']; 
mysqli_query($con,"SELECT * FROM admin WHERE id='$id' "); 
} 
?> 

回答

0

您的SQL查詢shoulb是

SELECT * FROM admin WHERE id='1'; 
0

你爲什麼會想到這個代碼,以顯示已登錄的用戶,因爲你正在做的:

SELECT * FROM admin 

這從表中檢索所有行沒有條件。您需要添加一個WHERE條款如:

SELECT * FROM admin WHERE user_id = ? 

在用戶的user_id將被存儲在會話通常登錄。還請記住使用準備好的語句,而不是將user_id直接連接到查詢中。

+0

如何使用'row'顯示id? – user3518210

+0

看到我的編輯............ – user3518210

1

當您對$result = mysqli_query($con,"SELECT * FROM admin");中的數據庫進行查詢時,您需要傳遞存儲在會話變量或其他內容中的用戶標識。

看看這個:

$uid = $_SESSION['uid']; 
$result = mysqli_query($con, "SELECT * FROM admin WHERE uid = '$uid'"); 
+0

我試過你的代碼,但它顯示這個錯誤:'未定義的索引:在C:\ Users \ Raj \ PhpstormProjects \中的新鏈接linkvessel \ change_setting_db.php在線10' – user3518210

+0

看我的編輯............ – user3518210

0

這裏通過在條件查詢,如果你想要特定用戶名的用戶「ID」。

$con=mysqli_connect("localhost","root","Bhawanku","members"); 
//Check connection 

if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 
$result = mysqli_query($con,"SELECT * FROM admin where id=(pass your id's value here)"); 
?> 

  1. 你可以保持在ID,如果會話的登錄憑據是正確的。
  2. ,當你有你的手的ID剛剛火與在條件類似

    $結果= mysqli_query($ CON選擇查詢, 「從管理選擇*其中id = ' 」$ ID「。'」 ); if(count($ result> 0) //現在顯示該用戶的名稱 echo「Id =」。$ result [0] ['id']; echo「Name =」。$ result [ 0] ['first_name']。「」。$結果[0] [ '如first_name']; } else { //在此處理錯誤情況 echo「找不到結果」; }

+0

如何使用行顯示id ?? .......... – user3518210

+0

您正在訪問數據庫表中所有具有特定id的列您將按照您的代碼獲取所有數據(ID,FIRST_NAME,LAST_NAME)。 – Parimal

+0

看到我的編輯它不工作,正如你所說我做了所有,但它不工作 – user3518210

0
SELECT * FROM admin WHERE username = $username AND password = $password); 

Row ID:<?= $row['id'] ?> 
+0

以及如何通過'$用戶名'和'$密碼'請幫助:( – user3518210

+0

在您的登錄表單中,用戶名字段有名稱='用戶名'並且密碼字段具有name ='password'並且在接收表單提交的頁面上具有$ username = $ _POST ['username'];並且密碼相同 – tylerlindell

0

我想這應該幫助你,

<!DOCTYPE html> 
<html> 
<head> 
</head> 
<body id=""body> 
    <div id="body-container"> 
     <form action="index.php" method="POST"> 
      <input type="text" id="username" name="username" value="" autocomplete="false" spellcheck="false" placeholder="Username" /> 
      <input type="password" id="password" name="password" value="" autocomplete="false" spellcheck="false" placeholder="Password" /> 
      <input type="submit" id="submit" name="submit" value="submit" /> 
     </form> 
    </div> 

    <?php 
     $username = $_POST['username']; 
     $password = $_POST['password']; 

     $database = mysqli_connect("database-ip", "database-username", "database-password", "database-name", "database-port"); //fill in the examples correctly! 

     $fetch_username = mysqli_query($database, "SELECT * FROM login WHERE username='$username'"); 

     $fetch_password = mysqli_query($database, "SELECT * FROM login WHERE password='$password'"); 

     $check_username = mysqli_fetch_array($fetch_username); 
     $check_password = mysqli_fetch_array($fetch_password); 

     if($username = $check_username && $password = $check_password){ 
      echo "loged in"; 
     } 

     if($username != $check_username || $password != $check_password){ 
      echo "incorrect username or password"; 
     } 
    ?> 


</body> 
</html> 

我真的建議你檢查出的PHP官方文檔:

http://www.php.net/manual/en/

我希望這幫了你(=

相關問題