Я пытаюсь получить его там, где, когда пользователь переходит к своему профилю, он покажет им свой адрес электронной почты. У меня есть он, где он показывает свое имя пользователя, используя $ _SESSION ['username'], но когда я пытаюсь это сделать для адреса 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','[email protected]');
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>
Если вы не указали электронное письмо в рамках СЕССИИ, вы не можете попробовать и схватить его так.
Вам нужно использовать запрос MySQL (исследование PDO), чтобы захватить электронную почту из базы данных на основе некоторых критериев (например, имя пользователя).
Сначала вам нужно получить адрес электронной почты пользователя из базы данных, скажем,
Запрос:
"SELECT email from user WHERE username ='$username' ";
После выполнения запроса и получения данных из базы данных вы можете сделать следующее: $_SESSION['email'] = $result['email'];
$sql = "SELECT FROM members WHERE email='$email' $row = mysqli_query($connect, $sql); $id = $row['userID']; echo $id;