2014-11-06 67 views
-5

查詢:如何插入值與存儲的值進行比較

用戶輸入值(VARCHAR)通過贊助商ID頁面(簡單形式),那麼如果ID匹配,然後移動到註冊頁面,註冊。

驗證頁:

<form action="verify_check.php" method="post" class="basic-grey"> 

    <label> 
     <span>Sponser ID :</span> 
     <input type="text" name="token" value="" /> 
    </label> 

    <label> 
     <span>&nbsp;</span> 
     <input type="submit" class="button" value="SignUp" name="submit"/> 
    </label>  
</form> 

Verify_check頁:

<?php 
if (isset($_POST['submit'])) 
{ 
$token=$_POST['token']; 
$conn=mysqli_connect("localhost","root","", "gold_99") ; 

if(!$conn) 
{ 
die("connection failed: ".mysqli_connect_error()); 
} 


$sql = "SELECT * FROM personal_deatils WHERE userid = '$token'"; 
$row = mysql_fetch_array($sql) 
if (mysqli_query($conn, $sql)) 
{ 
    if($row =="$token"){ 
    echo "Data Select Succefully"; 
    } 
    else 
    echo "Wrong Connection"; 

} 

else { 
    echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
} 
} 
mysqli_close($conn); 

?> 

數據庫體系結構:

標題(VARCHAR),姓名(VARCHAR),用戶ID(VARCHAR,主),mobileno( varchar),email(varchar),country(varchar)

+0

您是否至少知道如何從PHP連接到DB並執行查詢? – David162795 2014-11-06 09:40:28

+0

什麼樣的數據庫? – sergio0983 2014-11-06 09:40:59

+0

@ Smriti-Techno-Logics什麼? 'header(「Location:/ mlm project/signup.php。」);'沒有先生,你沒有。我很抱歉,但你最好先學習一些基礎知識。 – David162795 2014-11-06 09:55:31

回答

0

要使用此解決方案,您必須將生成的令牌存儲在數據庫中, 在用戶表中說,或者如果你想要的話,你可以把它保存在不同的表中,分別與用戶ID相關。現在,讓我們考慮一下,您存儲在會話中的任何代碼都存儲在用戶表中。

當您要求用戶在文本框中輸入驗證碼併發送表格至verify_check.php。現在在verify_check文件中,您可以獲取用戶輸入的任何代碼。

現在你可以驗證用戶的輸入的值等於會話值因爲你已經做了。

if (isset($_POST['token']) && isset($_SESSION['token']) && ($_POST['token'] == $_SESSION['token'])) { 

現在您可以使用此令牌查詢您的數據庫,並檢查您是否獲取該用戶的任何記錄。

$con = mysql_connect("your_Hostname","your_username","your_password"); 

if (!$con) { 
    die("Not able to connect the database") 
} 

$db = mysql_select_db("your_databasename",$con); 
if (!$db) { 
    die("Database not found"); 
} 

$sql = "SELECT * FROM `your_table_name` 
     WHERE `token` = '" .$_POST['token']. "'"; 

$res = mysql_query($sql); 
if ($res) { 
    $result = mysql_fetch_assoc($res); 
     if (isset($result['column_name_from_table_in_which_you_have_saved_user_id_at_registration_time'])) { 
     @header("Location:/mlm project/signup.php."); 
     } 
} else { 
    echo "Error, Wrong Sponser ID " ; 
    } 
} 
+0

SQL注入危險區 – David162795 2014-11-06 10:16:10

+0

@alankar它不工作。 ......它的錯誤,贊助商ID錯誤。 – 2014-11-07 06:38:50

+0

Verify_check.php <?php session_start(); error_reporting(0); $ con = mysql_connect(「localhost」,「root」,「」); $ db = mysql_select_db(「gold_99」,$ con); ($ _ POST ['token'])&& isset($ _ SESSION ['token'])&&($ _POST ['token'] == $ _SESSION ['token'])) $ sql = 「SELECT * FROM personal_deatils WHERE token ='」。$ _ POST ['token']。 「'」; $ res = mysql_query($ sql);如果($ res){ $ result = mysql_fetch_assoc($ res);如果(isset($ result ['userid'])){ @header(「Location:/ mlm project/signup.php。「);} } 否則{ 回聲 」錯誤,錯誤Sponser ID「;? } > – 2014-11-07 06:39:20

相關問題