2013-08-30 31 views
0

任何人都可以幫助我瞭解我所處的情況。我一直在試圖找到如何顯示用戶的名字,姓氏電子郵件等的答案。從信息存儲的表中,但我唯一的運氣與回聲此信息只是得到一個特定的感覺所有的信息顯示像所有的電子郵件,而不是隻有一個特定的電子郵件爲用戶或我只是最終與MySQL錯誤。從數據庫表中登錄用戶數據的PHP/MYSQL回聲

這裏是比如我的index.php源

<?php 

session_start(); 

if (isset($_SESSION['id'])) { 
    // Put stored session variables into local php variable 
    $userid = $_SESSION['id']; 
    $email = $_SESSION['email']; 
    $firstname = $_SESSION['first_name']; 
    $lastname = $_SESSION['last_name']; 
    $businessname = $_SESSION['company_name']; 
    $country = $_SESSION['country']; 
    $plan = $_SESSION['plan']; 
} else { 
    header("Location: http://somewebsite.com"); 
} 

include 'connect.php'; 

$first_name = $_GET['first_name']; 
$last_name = $_GET['last_name']; 

?> 

我想在頭

<span class="username">USER</span> <--replace user with logged in user's firstname n last  name--> 
+3

您在哪裏訪問數據庫?你說過你試過它並收到錯誤。請顯示代碼! –

+0

我不明白這裏有什麼問題。請解釋更多並顯示你得到的錯誤。 – iiro

+0

如果您將用戶數據保存到會話中,爲什麼不能'echo'用戶的名字?有什麼問題? –

回答

1

你可以做這樣的事情呼應用戶的名字: 寫一個函數從表格中獲取特定的數據,如下面的數據。

function getuserfield($field) { 
    $query = "SELECT $field FROM users WHERE id='".$userid."'"; 
    if ($query_run = mysqli_query($query)) { 
     if ($query_result = mysqli_result($query_run, 0, $field)) { 
      return $query_result; 
     } 
    } 
} 
/* userid = $_SESSION['id']; */ 

「$ query_result」將顯示用戶名。 $ field是您想要顯示的特定字段。通過此功能,您可以從指定字段獲取任何特定數據。

+0

請不要向用戶推薦mysql_ * - 函數。他們已被棄用。你的函數也使用$ userid但不聲明它,它也不作爲參數傳遞。您的代碼也容易受到mysql注入的影響。真是不好的例子! –

+0

@TobiasKun在上面的問題中聲明瞭userid變量,它等於$ _SESSION ['id']。我正在使用類似於此的功能來在我自己的網站上顯示當前登錄的用戶和其他統計數據。我錯誤地使用了mysql_函數,它應該是mysqli_函數。 –

+0

然後更新你的例子。 –

相關問題