我试图把它弄到哪里,当用户访问他们的个人资料时,它会向他们显示他们的电子邮件地址。我通过使用$ _SESSION ['用户名']显示其用户名,但是当我尝试使用EMAIL地址时,它无法正常工作。有关如何从数据库中选择电子邮件地址的任何想法?先感谢您!! :)
它显示了他们当前的电子邮件地址:然后是代码。 这是我的PHP:
包含/ config.php获取数据库信息。
<?php require('includes/config.php');
//if not logged in redirect to login page
if(!$user->is_logged_in()){ header('Location: login.php?action=login'); }
?>
包含/ config.php
<?php
ob_start();
session_start();
//set timezone
date_default_timezone_set('Europe/London');
//database credentials
define('DBHOST','localhost');
define('DBUSER','xxxxx');
define('DBPASS','xxxxx');
define('DBNAME','bigfellamembers');
//application address
define('DIR','http://xxxxxxxxxxx.com');
define('SITEEMAIL','noreply@domain.com');
try {
//create PDO connection
$db = new PDO("mysql:host=".DBHOST.";dbname=".DBNAME, DBUSER, DBPASS);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
//show error
echo '<p class="bg-danger">'.$e->getMessage().'</p>';
exit;
}
//include the user class, pass in the database connection
include('classes/user.php');
include('classes/phpmailer/mail.php');
$user = new User($db);
?>
Heres:我的一些HTML:
<!-- row -->
<div class="row">
<div class="col-md-12">
<div class="white-box">
<div class="user-bg"><img width="100%" alt="user" src="login-bg.jpg">
<div class="overlay-box">
<div class="user-content">
<a href="javascript:void(0)"><img src="uploads/<?php echo $_SESSION['username']; ?>.jpg" class="thumb-lg img-circle" alt="img"></a>
<h4 class="text-white">Current Username: <?php echo $_SESSION['username']; ?> </h4>
<h5 class="text-white">Current Email Address: <?php echo $_SESSION['email']; ?>
</div>
</div>
</div>
答案 0 :(得分:1)
如果你没有在SESSION中设置电子邮件,那么就不能尝试抓住它。
您需要使用MySQL查询(研究PDO)根据某些条件(例如用户名)从数据库中获取电子邮件。
答案 1 :(得分:0)
您首先需要从数据库中获取用户电子邮件,让我们说
查询:
"SELECT email from user WHERE username ='$username' ";
运行查询并从数据库中提取数据后,您可以执行以下操作:$_SESSION['email'] = $result['email'];