簡體   English   中英

PHP / MySQL登錄表單

[英]PHP/MySQL Login form

我在數據庫中有3個表:

customer
contacts
reseller

我的網址有index.php?rid=5 (rid = 5是來自經銷商表的一行,序列為5)

我的客戶表有一個resellerid列,因此有很多行,其resellerid為5

我的聯系人表有一個company_sequence列,鏈接到customer表的sequence列。

聯系人表格有一個電子郵件密碼

即時嘗試為聯系人表創建行的登錄表單,以使用電子郵件和密碼登錄。

我試過這段代碼:

$sql="SELECT * from customer where resellerid = '".$ResellerID."' ";
        $rs=mysql_query($sql,$conn);
        while($result=mysql_fetch_array($rs))
        {
        $sql2="select * from contacts where company_sequence = '".$result["sequence"]."' and email='".$email."' and password='".md5($password)."'";
        $rs2=mysql_query($sql2,$conn);
        $result2=mysql_fetch_array($rs2);

但是當我運行if(mysql_num_rows($rs2) > 0) ,即使聯系人表中有一個有效行,它也只會檢查最后一行。

我怎么能讓這個工作?

SELECT * FROM customer
JOIN contacts ON (company_sequence = sequence)
WHERE resellerid = ?
AND email = ?
AND password = ?

我也有一些批評,即:

  • 您正在使用ext/mysql 使用PDO或mysqli
  • 您沒有使用參數化查詢,並且您的查詢易受注入攻擊
  • md5是一個不適合密碼的弱哈希

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM