2016-02-26 120 views
-1

我有一個大學項目,用戶可以註冊並登錄到一個網站。我已經設置了註冊用戶時輸入他們的用戶名,電子郵件,密碼,確認密碼,地址和電話號碼。一旦註冊,他們被分配一個隨機的字符串值,讓我們叫它$ randomString。從數據庫檢索特定值php

所以我的數據庫是login_db,它包含表用戶。表標題是用戶名,電子郵件,密碼,地址,電話號碼,randomstring。

它運行良好,用戶可以註冊,它們的詳細信息被添加到數據庫中,用戶可以登錄。當他們登錄時,他們被重定向到admin.php。此頁目前空白。

還記得$ randomString人被分配了嗎?我需要進入數據庫檢索$ randomString並顯示在admin.php上。

這是我迄今試過的,我只能夠顯示所有用戶隨機字符串,但我只需要登錄的用戶randomString。所以我假設我需要經過的步驟是
1.檢查IF用戶是否登錄過。也許----> if(isset($ _ SESSION ['email'])
2.檢查WHAT用戶登錄。????
3.檢索登錄的用戶randomString。????
4.顯示隨機串。說不定---->回波$結果???

我有。絕對的零知道怎麼做,所以所有的幫助表示讚賞

$connection = mysqli_connect('localhost', 'root', '', 'login_db'); 

if($connection) { 
echo "we are connected"; 
} else { 
die("Database connection failed"); 
} 


?> 


<div class="jumbotron"> 
<h1 class="text-center"><?php 

$query = "SELECT randomString FROM users"; 

$result = mysqli_query($connection, $query); 

while ($row = mysqli_fetch_row($result)) { 

print_r($row); 

} 

?></h1> 
</div> 
+0

「檢查用戶是否登錄。?? 「?? – Drudge

+0

那麼我不得不首先檢查一個用戶是否登錄,然後如果用戶登錄,找出哪個用戶登錄? – Lewk

+0

或者可以這樣做在一個步驟嗎? – Lewk

回答

0

讓我與你的問題解釋:

檢查,如果用戶登錄

您需要設置會話一定的價值,當你的系統用戶登錄,這樣就可以檢查每一個新的要求,即會話值就像你在說你也許 。即if(isset($_SESSION['email'])

檢查什麼用戶已登錄。????

如果你想找出哪些用戶已在然後登錄你也必須設置所有用戶信息 (ID,用戶名/姓氏或名字等),你會和你一樣救了 用戶電子郵件會話。

獲取登錄的用戶randomString

要在用戶randomString找回記錄,可查詢,你已經保存在session,當用戶第一次登錄的用戶信息數據庫。我。

Select randromString from users_table where id='$_SESSION['id']'; //i had suppose you had kept id of logged in user in session here . 

顯示的隨機字符串

要顯示的隨機字符串,是的,現在你只需附和你已經從數據庫中使用上面的查詢檢索$randomString值。

+0

啊我看,謝謝你清除這個對我來說:)非常感謝 – Lewk

+0

@Lewk如果你覺得這有幫助,那麼請接受答案,以便它可以對其他人有所幫助 – Drudge

+0

@Drudge您的查詢是錯誤的,因爲您沒有選擇從數據庫,你只選擇了randomString,因此這個'where id ='可能不會被識別 –

0

首先創造你想要的東西從數據庫中登錄的用戶的連接

<?php 
$hostname_localhost = "localhost"; 
$database_localhost = "databasename"; 
$username_localhost = "root"; 
$password_localhost = ""; 
$localhost = mysql_pconnect($hostname_localhost, $username_localhost, $password_localhost) or trigger_error(mysql_error(),E_USER_ERROR); 
?> 

其次選擇

<?php 
$colname_record = "-1"; 
if (isset($_SESSION['email'])) { 
    $colname_record = $_SESSION['email']; 
} 
mysql_select_db($database_localhost, $localhost); 
$query_record = "SELECT userID, randomString, email FROM users WHERE email='$colname_record'"; 
$record = mysql_query($query_record, $localhost) or die(mysql_error()); 
$row_record = mysql_fetch_assoc($record); 
$totalRows_record = mysql_num_rows($record); 
?> 

第三獲取登錄的用戶的變量和回聲它

<?php 
$randomstring = $row_record['randomString']; 
?> 

並顯示它

<?php 
echo $randomstring; 
?> 
+0

不建議使用mysql_ *,因爲它在PHP7中被刪除。 – Drudge

+0

我應該建議哪一個? @Drudge –

+0

檢查PDO和mysqli。 – Drudge