mysql - 關於php做個人空間

來源:互聯網
上載者:User
做個人空間相應的許可權怎麼解決,自己訪問自己的部落格可以修改資料等等,但是別人訪問就只能查看。新手求各位大神給個思路或者解決辦法。

回複內容:

做個人空間相應的許可權怎麼解決,自己訪問自己的部落格可以修改資料等等,但是別人訪問就只能查看。新手求各位大神給個思路或者解決辦法。

你只需要區別訪問者是 【你自己】 還是 【別人】。
那麼最流行的就是使用“密碼登入”了,你的個人空間就是只有一個使用者的segmentfault,其他人都是遊客

參考

PHP驗證登入使用者名稱和密碼

我覺得可以在資料庫中建立管理員表來設定管理員帳號和密碼,在使用者登入驗證介面中判定登入的帳號是不是管理員帳號,如果是,則進入管理員頁面,可以對資料進行修改刪除等操作,如果不是,則進入使用者頁面,沒有相應的操作許可權。

$salt = sha1(uniqid(mt_rand(), true)); //使用者鹽$pwd_db = sha1($salt.sha1($pwd_user)); //資料庫儲存的密碼$pwd_cookie = sha1($global_salt.sha1($pwd_db)); //cookie裡儲存的密碼雜湊,$global_salt是全域鹽,可以在配置config.php裡自訂.$value = base64_encode($user_id.'|'.$pwd_cookie); //組合使用者ID和密碼setcookie($cookie_name, $value); //設定cookie

比如使用者訪問 http://segmentfault.com/user/settings 時:
從使用者發送過來的cookie中取出$user_id,找到$pwd_db,做$pwd_cookie運算,然後跟cookie裡的$pwd_cookie比對,一致則通過驗證.
然後就讀取$user_id的使用者的資訊並在/user/settings(個人空間)裡顯示出來供使用者修改.
個人空間的實現原理其實就是驗證身份後顯示對應身份的內容.

這樣子你就是相當於背景管理員了,只要建立你自己一個賬戶不就行了?

很簡單其實,你在瀏覽器設定一個永久cookie,只有有這個cookie的人才能擁有最高許可權

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.