2017-06-17 75 views
0

我想爲學校編碼,我們必須通過輸入數據庫中的有效電子郵件來讓某人登錄到數據庫,然後根據他們輸入的電子郵件顯示該用戶的姓名。我可以讓他們用電子郵件登錄,但我不知道如何顯示名稱。如何通過他們的電子郵件登錄顯示用戶名?

這裏有一個exerpt從我的index.php控制器

else if ($action == 'register_product') { 
$email = $_POST['user_email']; 

$sql = "SELECT * FROM customers WHERE email='$email' "; 
$result = $db->query($sql); 

$customerID = get_customer_by_email($email); 
$firstName = $customerID['firstName']; 
$lastname = $customerID['lastName']; 
} 

,並在名稱將顯示我的繼承人註冊表單,謝謝!

<h2>Register Product</h2> 
<form action="index.php" method="post" id="register_product_form"> 
    <input type="hidden" name="action" value="register_product"> 

    <label>Customer:</label> 
    <input type="text" name="category_id" value="<?php echo $firstName; ?>" 
      readonly><br> 
+0

那麼,什麼不起作用?你有錯誤嗎? – Daniel

+1

我看到你做了一個查詢(一個非常危險的,受SQL注入影響),但是你沒有使用結果。您還正在引用名爲get_customer_by_email($ email)的函數,但您沒有包含該代碼。沒有相關信息無法提供幫助。 –

回答

0

您需要在登錄後將用戶信息保存在session

<?php 
// Start the session at first 
session_start(); 
?> 
<!DOCTYPE html> 
<html> 
<body> 
. 
. 
. 



$sql = "SELECT * FROM customers WHERE email='$email' "; 
$result = $db->query($sql); 

$customerID = get_customer_by_email($email); 

$_SESSION['user_data'] = $customerID; 

現在你可以使用會話來獲得在每個頁面的用戶數據:

<label>Customer:</label> 
    <input type="text" name="category_id" value="<?php echo $_SESSION['user_data']['first_name'] ?>" 
      readonly><br> 
相關問題