2014-04-23 56 views
2

我正在嘗試創建一個用戶登錄系統,其中每個用戶都有一個密碼,一個用戶名和一個級別(I.E Admin或Master)。我到目前爲止所做的:帶有Angular JS的mySQL數據庫的用戶登錄系統?

使用PHP創建一個mySQL數據庫,並在表中創建相關字段。

做了一個簡單的Angular JS頁面。

我試圖連接數據庫和網頁這樣我就可以檢查用戶在登錄inpuot領域的投入與存儲在我的MySQL表的「密碼」一節中的所有數據。

任何想法,我可以如何實現這一目標?最簡單,直接的答案請作爲我新來的Angular(和mySQL!)

謝謝!

+0

您需要創建一些服務器端代碼(在您的情況下,可能在php中)來執行實際的數據庫操作,然後使用Angular的$ http或$ resource調用此代碼。 – slapthelownote

+0

如何使用angular創建表單,將數據發佈到php腳本並驗證登錄數據?但是請自己嘗試一下;)如果你有一些代碼和問題,那就回來再問一次! –

+0

我會嘗試使用$ _POST來獲取表單輸入,然後將其連接到Angular。感謝大家的迅速回復! :) – Charkizard

回答

6

您不應該在角頁面上進行登錄,因爲所有相關的數據都是通過JavaScript處理的,因此可以輕鬆停止,調試和分析。

的更好的方式是:

  1. 創建一個正常的index.php呈現一個登錄形式提供給用戶。
  2. 提交檢查數據庫的有效性。
  3. 如果用戶有效,則啓動一個會話並在實際角度應用頁面上輸入header
  4. 只有這樣,才能檢查,如果這是一個有效的php session是通過角http服務到你的數據庫相關的PHP腳本您REST電話。
  5. 因此,每個對您的REST api的讀/寫訪問都應該檢查,如果該用戶真的被允許在php腳本中執行此db操作。
  6. 如果檢查失敗,返回header登錄頁面或某些「Got you!」頁。

這樣的attackor可能能夠看到的角應用程序的js代碼(如果他被莫名其妙地保存實際地址),但它是完全沒用的,他的,因爲他永遠無法看到實際的數據,只要因爲他還沒有開始有效的php session。數據是你想要保護的,而不是應用程序的腳本。

簡而言之:混合標準PHP驗證和Angular。允許haxors訪問您的頁面,但永遠不會向他們展示您的任何基礎數據。只要有人試圖弄亂你的數據,就把他踢出去。

這是幾乎一樣的答案我給here

搜索PHP和角點標記的關鍵字來把握這背後的想法。

+0

謝謝!我會研究它,並讓你知道我如何繼續。 :) – Charkizard