PHP新手學習之Cookie控制訪問授權

來源:互聯網
上載者:User
正式項目中基本都會有都會有授權控制的應用,如RBAC許可權等。本文通過分享使用Cookie控制訪問授權的方法,來協助新手更好的理解php和使用cookies。

<?php      if(isset($_POST['name'])||isset($_POST['pass'])){          //如果有表單有提交          //檢測表單中需要的值          if(empty($_POST['name'])){              die("請輸入使用者名稱!");          }          if(empty($_POST['pass'])){              die("請輸入密碼!");          }          //設定資料庫變數          $host = "localhost";          $user = "root";          $pass = "zq19890319";          $db = "cookie";          //開啟串連          $connection = mysql_connect($host, $user, $pass) or die("Unable to connect!");          //選擇一個資料庫          mysql_select_db($db) or die("Unable to select database!");          //建立一個查詢          $query = "SELECT * FROM users WHERE name = '".$_POST['name']."' AND pass = SHA1('".$_POST['pass']."')";          //執行一個查詢          $result = mysql_query($query) or die("Error in query:$query." . mysql_error());          //是否有記錄集返回          if(mysql_num_rows($result) == 1){              //如果有一行記錄返回              //表示驗證已經通過              //建立一個session,設定一個登陸標記為1,並將目前使用者名儲存在cookie中              session_start();              $_SESSION['auth'] = 1;              setcookie("username", $_POST['name'], time()+(84600*30));              echo "使用者訪問已經授權!";          }else{              echo "錯誤的使用者名稱或密碼!";          }          //釋放記錄集          mysql_free_result($result);          //關閉資料庫          mysql_close($connection);      }      else{          //如果沒有表單提交,則顯示一個HTML表單      ?>      <html>      <head></head>      <body>          <center>              <form method="post" action="">              使用者名稱<input type="text" name="name" value="<?php echo $_COOKIE['username'];?>" />              <p />              密碼<input type="password" name="password" />              <p />              <input type="submit" name="submit" value="登陸" />              </form>          </center>      </body>  <?php      }  ?>


相關推薦:

ThinkPhp RBAC心得_PHP教程

PHP學習之萬年曆的編寫

PHP學習CURL之爬蟲執行個體

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.