<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                我們做一個最簡單的注冊頁面。注冊頁面中有三個參數: 1. 用戶名 2. 密碼 3. 重復密碼 用戶寫好三個參數后,點擊提交的時候向connect.php頁面中傳入POST記錄。 我們可以把POST記錄處理后寫入到MySQL數據庫中,即完成了用戶注。 代碼如下: ~~~ <form action="connect.php" method="post"> 用戶名:<input type="text" name="username"><br /> 密碼:<input type="password" name="password"><br /> 重復密碼:<input type="password" name="repassword"><br /> <input type="submit" value="提交"> </form> ~~~ 為了更快的表現我們的代碼界面沒有進行美化。以最快的速度帶大家完成用戶注冊。 ####一、 判斷重復密碼 由于有重復密碼,如果用戶兩次輸入的密碼不一致也就是有沒有進行下一步的任何意義。 在網頁中很多地方還是使用到了重復密碼。因為,害怕的是用戶產生手誤。將密碼填寫出錯。 用戶在輸入密碼的時候可能在左右兩邊多打兩個空格。因此,我們會使用trim將密碼和重復密碼的兩邊去掉空格。 ~~~ if(trim($_POST['password']) != trim($_POST['repassword'])){ exit('兩次密碼不一致,請返回上一頁'); } ~~~ ####二、 準備好寫入的數據 我們需要把用戶的輸入數據和隱藏的數據都寫入到數據庫。 可見數據有: | 變量 | 說明 | | -- | -- | | $_POST['username'] | 用戶名| | $_POST['password'] | 密碼| 1. 我們需要把用戶名去掉兩邊的空格,這樣避免輸入不必要的這些信息。 2. 在mysql這一章節我們講過,用戶的密碼不要讓包括公司內部人員可見。保證密碼是不可逆向的。在初級階段大家學習一下MD5即可。以后我們再教大家其他的加密方式。 不可見數據有: | 變量 | 說明 | | -- | -- | | $time | 用戶的注冊時間| | $_SERVER['REMOTE_ADDR'] | 用戶的注冊IP| 1. time返回的unix時間戳 2. REMOTE_ADDR返回的是IP地址,我們可以用ip2long將其轉為整型存儲。 ~~~ $username = trim($_POST['username']); $password = md5(trim($_POST['password'])); $time = time(); $ip = ip2long($_SERVER['REMOTE_ADDR']); ~~~ ####三、連接數據庫、判斷錯誤、選擇庫和字符集 1. 我們使用mysqli_connect連接到數據庫服務器。 2. 如果有錯誤,使用mysqli_errno得到錯誤號 3. 如何時存在錯誤mysqli_error打印出所有的錯誤,并且退出程序執行 4. 選擇數據庫并且設置字符集為utf8. ~~~ //連接數據庫 $conn = mysqli_connect('localhost','root','liwenkaihaha'); //如果有錯誤,存在錯誤號 if(mysqli_errno($conn)){ echo mysqli_error($conn); exit; } mysqli_select_db($conn,'user'); mysqli_set_charset($conn,'utf8'); ~~~ ####四、組合SQL語句 我們需要把得到的信息寫入到數據庫里面去,用戶名、密碼、創建時間、IP我們都得到了。 將對應的變量插入到SQL語句中即可。組合出來的SQL語句如下: > $sql = "insert into user(username,password,createtime,createip) values('" . $username . "','" . $password . "','" . $time . "','" . $ip . "')"; 而我們的創建表的語句如下: > CREATE TABLE IF NOT EXISTS `user` ( `id` int(11) NOT NULL, `username` varchar(30) NOT NULL, `password` char(32) NOT NULL, `createtime` int(11) NOT NULL, `createip` int(11) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 表的格式(字段對應說明): | id | username | password | createtime | createip | | -- | -- | -- | -- | -- | | 用戶編號 | 用戶名 | 密碼 | 創建時間 | 創建IP | ####五、發送語句,判斷狀態 mysqli_query我們在上面說過,需要傳入兩個參數: 1. 連接的資源,在這里對應的變量是$conn。 2. 發送的SQL語句。在上面已經準備好了$sql。 SQL語句可以通過mysqli_query發送給MySQL服務器。發送成功$result則為true。否則為false。 成功的話,我們就可以提示用戶注冊成功啦。 有些情況下,可能還需要使用到mysqli_insert_id()。在這里把自增的主鍵ID打印出來。 大家記住這個知識點,避免以后需要的時候忘記了。 mysqli_insert_id應用場景:新加的一個行的數據。我們需要得到自動增長的ID值,將這個ID值插入到另外一個表里面去時。就需要用到這個函數。 ~~~ $result = mysqli_query($conn,$sql); if($result){ echo '注冊成功'; }else{ echo '注冊失敗'; } echo '當前用戶插入的ID為'.mysqli_insert_id($conn); ~~~ ####六、關閉數據庫連接 將資源變量傳到到mysqli_close這個函數里面即可。 ~~~ mysqli_close($conn); ~~~ 用戶注冊的基本實現代碼就寫完了。我們上面講的都是代碼片段。 我們整實現的connect.php代碼如下: ~~~ <?php if (trim($_POST['password']) != trim($_POST['repassword'])) { exit('兩次密碼不一致,請返回上一頁'); } $username = trim($_POST['username']); $password = md5(trim($_POST['password'])); $time = time(); $ip = $_SERVER['REMOTE_ADDR']; $conn = mysqli_connect('localhost', 'root', 'liwenkaihaha'); //如果有錯誤,存在錯誤號 if (mysqli_errno($conn)) { echo mysqli_error($conn); exit; } mysqli_select_db($conn, 'book'); mysqli_set_charset($conn, 'utf8'); $sql = "insert into user(username,password,createtime,createip) values('" . $username . "','" . $password . "','" . $time . "','" . $ip . "')"; $result = mysqli_query($conn, $sql); if ($result) { echo '成功'; } else { echo '失敗'; } echo '當前用戶插入的ID為' . mysqli_insert_id($conn); mysqli_close($conn); ?> ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看