2017-06-17 89 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> 
相关问题