整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          PHP連接數據庫實現登錄

          PHP連接數據庫實現登錄

          們先新建一個database.php,用來寫數據庫連接,之后每次需要使用的時候直接調用這個文件這樣就不需要在每個文件中重復的寫同樣的代碼,圖一貼了database的代碼,代碼中都有注釋。

          (圖一)database.php

          寫完數據庫連接,我們在來寫一個登錄的頁面,新建一個login.php,在圖二html代碼中寫上用戶名和密碼的輸入框,代碼中使用下拉框選擇的用戶名,如果需要使用文本框輸入,請參考登錄密碼的寫法。

          (圖二)login.php

          (圖三)

          我們運行一下login.php文件看下效果(圖三),可以看到基本的效果已經達到了,我們繼續在代碼的最上端加上連接數據庫的語句(圖四)。

          (圖四)

          數據庫的基本工作已經做好了,我們是不是應該去建個數據,我們在MySql中新建一個數據庫命名為register,在其中建立一個users表,user_id(自增長列),userName(用戶名),password(密碼)。建好后在users表中增加幾條數據如(圖五)。

          (圖五)

          在用戶名的下拉框中沒有可以選擇的用戶名,我們在增加一段php代碼,使其能獲取到數據庫中的用戶名,并且顯示在下拉框中(圖六)。

          (圖六)

          我們刷新一下頁面看下是不是能顯示出數據庫中的2個用戶名(圖七)在不使用數據庫后記得關閉數據庫哦。

          (圖七)

          現在輸入用戶名和密碼點擊登錄是沒有反應的,我們在加上一個from,使用post傳值,這樣login.php這個頁面就寫完了,整段代碼粘貼到(圖八)。

          (圖八)

          然后我們來寫判斷登錄的php文件logins.php(圖九),這段代碼我就不分開說了因為比較短,都有打備注。

          (圖九)

          最后測試,密碼輸入1顯示登錄成功并跳轉home頁面,輸入其他密碼顯示登錄失敗并跳回登錄頁面。沒有問題,如果大家有看不懂的地方,或者我有寫錯的地方麻煩大家評論或者私信我我都會一一回復的。

          今天這個連接數據庫登錄的頁面寫完了,下一篇文章我們來寫注冊,第一次寫文章可能寫的不是太好望見諒。

          文件系統處理的作用:

          1. 所有的項目離不開文件處理

          2. 可以用文件長時間保存數據

          3. 建立緩存, 服務器中文件操作

          文件處理

          1. 文件類型

          以Linux為模型的, 在Windows只能獲取file, dir或unknow 三種類型

          在Linux/Unix下, block, char, dir, fifo, file, link, unknown和種型

          block :塊設置文件,磁盤分區,軟驅, cd-rom等

          char: 字符設備,I/O 以字符為單位, 鍵盤,打印機等

          dir: 目錄也是文件的一種

          fifo:

          file:

          link:

          unknown

          filetype("目錄或文件名")

          is_array();

          is_int();

          is_string();

          is_null;

          is_bool();

          is_dir -- 判斷給定文件名是否是一個目錄

          is_executable -- 判斷給定文件名是否可執行

          is_file -- 判斷給定文件名是否為一個正常的文件

          is_link -- 判斷給定文件名是否為一個符號連接

          is_readable -- 判斷給定文件名是否可讀

          is_uploaded_file -- 判斷文件是否是通過 HTTP POST 上傳的

          is_writable -- 判斷給定的文件名是否可寫

          is_writeable -- is_writable() 的別名


          2. 文件的屬性

          file_exists();

          filesize();

          is_readable();

          is_writeable();

          filectime();

          filemtime();

          fileactime();

          stat();

          3. 和文件路徑相關的函數

          相對路徑:相對于當前目錄的上級和下級目錄

          . 當前目錄

          .. 上一級目錄

          ./php/apache/index.php

          php/apahce/index.php

          login.php

          ./login.php

          ../images/tpl/logo.gif


          路徑分隔符號

          linux/Unix "/"

          windows "\"

          DIRECTORY_SEPARATOR 為不同平臺,在Windows \ Linux /

          不管是什么操作系統PHP的目錄分割符號都支技 / (Linux)

          在PHP和Apache配置文件中如果需要指定目錄,也使用/作為目錄符號

          絕對路徑:

          / 根路徑

          /images/index.php

          指的操作系統的根

          指的是存放網站的文檔根目錄

          分情況

          如果是在服務器中執行(通過PHP文件處理函數執行)路徑 則 “根”指的就是操作系統的根

          如果程序是下載的客戶端,再訪問服務器中的文件時,只有通過Apache訪問,“根”也就指的是文檔根目錄

          http://www.xsphp.com/logo.gif


          basename(url)

          dirname(url)

          pathinfo(url)


          4. 文件的操作相關的函數

          創建文件 touch("文件名")

          刪除文件 unlink("文件路徑");

          移動文件 為文件重新命名 rename("當前文件路徑", “目錄為文件路徑”)

          復制文件 copy("當前", “目標”);

          一定要有PHP執行這個文件權限, Apache, 一個用戶


          和權限設計有關的函數


          ls -l 或 ll

          _rwxrwxrwx 777

          _ 類型 _文件 d 表示是目錄 l b

          rwx 表這個文件的擁有者 r讀 w寫 x執行

          rwx 表這個文件的擁有者所在的組 r讀 w寫 x執行

          rwx 其它用戶對這個為文件的權限 r讀 w寫 x執行

          r 4

          w 2

          x 1

          7 7 7 4+2+1 4+2+1 4+2+1

          rwx rwx rwx

          644

          4+2 4 4

          rw_ r__ r__

          754

          chmod u=rwx,g=rw,o=x

          chmod 777 demo.php

          chmod 644 demo.html

          chown mysql demo.php

          chgrp apache demo.php

          chgrp -- 改變文件所屬的組

          chmod -- 改變文件模式

          chown -- 改變文件的所有者

          filegroup -- 取得文件的組

          fileowner -- 取得文件的所有者


          5. 文件的打開與關閉(讀文件中的內容, 向文件中寫內容)

          讀取文件中的內容

          file_get_contents(); //php5以上

          file()

          readfile();

          不足:全部讀取, 不能讀取部分,也不能指定的區域

          fopen(URL, mode)

          本地文件:

          ./test.txt

          c:/appserv/www/index.html

          /usr/local/apahce/index.html

          遠程:

          http://www.baidu.com

          fopen("./test.txt", "a+")

          fwrite fread

          r , 以只讀模式打開文件

          r+ 寫

          w, 以只寫的方式打開,如果文件不存在,則創建這個文件,并寫放內容,如果文件存在,并原來有內容,則會清除原文件中所有內容,再寫入(打開已有的重要文件)

          w+ 除了可以寫用fwrite, 還可以讀fread

          a 以只寫的方式打開,如果文件不存在,則創建這個文件,并寫放內容,如果文件存在,并原來有內容,則不清除原有文件內容,再原有文件內容的最后寫入新內容,(追加)

          a+除了可以寫用fwrite, 還可以讀fread

          b 以二進制模式打開文件(圖,電影)

          t 以文本模式打開文件

          fread() // 第一個是讀取指定長度的字符

          fgetc() //一次從文件中讀取一個字符

          fgets() //一次從文件中讀取一行字符


          feof($file); 如果讀取文件出錯,或到文件結束,則返回真

          寫入文件

          file_put_contents(“URL”, “內容字符串”); //php5以上

          如果文件不存在,則創建,并寫入內容

          如果文件存在,則刪除文件中的內容,重新寫放

          不足: 不能以追加的方式寫,也不能加鎖

          fopen()

          fwrite() 別名 fputs

          第一個參數是文件資源(fopen返回來的),第個參數是寫的內容


          本地文件:

          ./test.txt

          c:/appserv/www/index.html

          /usr/local/apahce/index.html

          遠程:

          http://www.baidu.com

          http://www.163.com

          ftp://user@pass:www.baidu.com/index.php

          6. 文件內部移動指針

          ftell($file) //返回當前文件針的位置

          fseek($file, 10);

          fread();

          rewind();


          7. 文件的鎖定一些機制處理


          目錄的處理

          opendir()

          readdir()

          closedir()

          rewinddir()

          創建目錄

          mkdir(); //創建一個空目錄

          刪除目錄

          rmdir(); //只可以刪除空目錄

          在PHP中實時將數據庫中的數據顯示在網頁上,您可以使用Ajax和PHP進行無刷新更新。Ajax這個術語源自描述從基于Web的應用到基于數據的應用,它不是一種新的編程語言,而是一種用于創建更好更快以及交互性更強的Web應用程序的技術。Ajax在瀏覽器與Web服務器之間使用異步數據傳輸,這樣就可以使網頁從服務器請求少量的信息,而不是整個頁面。下面是一個簡單的示例:

          1.在您的HTML文件中,創建一個div元素來顯示數據庫中的數據。

          <div id="data-container"></div>

          2.在PHP文件中,編寫一個從數據庫中檢索數據的腳本來返回數據并將其插入到HTML文件中。

          <?php  
          // 連接到數據庫  
          // ...  
            
          // 從數據庫中檢索數據  
          $data=// ... 查詢語句 ...;  
            
          // 將數據插入到HTML文件中  
          $html='<p>'.implode('<br>', $data).'</p>';  
            
          // 輸出有意義的HTTP頭部  
          header('Content-type: text/html');  
            
          // 輸出HTML文件中的數據  
          echo $html;  
          ?>

          3.在您的JavaScript文件中,使用Ajax技術調用PHP腳本并將結果插入到div元素中。

          function updateData() {  
              // 創建Ajax請求  
              var xhttp=new XMLHttpRequest();  
              xhttp.onreadystatechange=function() {  
                  if (this.readyState==4 && this.status==200) {  
                      // 更新頁面上的數據容器  
                      document.getElementById("data-container").innerHTML=this.responseText;  
                  }  
              };  
              // 調用PHP腳本并傳遞參數(如果有的話)  
              xhttp.open("GET", "get_data.php", true);  
              xhttp.send();  
          }  
          // 每隔一段時間調用updateData()函數以獲取新數據  
          setInterval(updateData, 1000);

          這樣,每當指定的時間間隔過去時,JavaScript文件就會通過Ajax調用PHP腳本,獲取最新的數據并將其插入到HTML文件中的指定位置。


          主站蜘蛛池模板: 精品一区二区三区在线播放视频| 精品一区二区三区在线播放视频| 国产一区二区三区不卡AV| 国产美女露脸口爆吞精一区二区| 伊人色综合一区二区三区 | 97久久精品午夜一区二区 | 亚洲美女高清一区二区三区| 亚洲精品国产suv一区88| 亚洲爆乳精品无码一区二区三区| 冲田杏梨高清无一区二区| 亚洲AV无码一区二区大桥未久| 熟女精品视频一区二区三区| 精品国产亚洲一区二区在线观看| 成人精品一区二区三区电影| 亚洲国产综合精品中文第一区| 国产精品一区三区| 亚洲av成人一区二区三区| 国产精品高清一区二区三区不卡 | 久久久无码精品人妻一区| 无码人妻精品一区二区在线视频| 久久国产精品免费一区二区三区| 一区二区传媒有限公司| 少妇无码AV无码一区| 久久一区二区明星换脸| 无码人妻精品一区二区三区久久 | 精品欧洲av无码一区二区14| 日韩亚洲AV无码一区二区不卡| 中文字幕一区二区三区人妻少妇| 免费播放一区二区三区| 老熟妇高潮一区二区三区| 国产美女在线一区二区三区| 亚洲国产美国国产综合一区二区| 免费日本一区二区| 久久精品国产免费一区| 无码精品人妻一区二区三区漫画| 日本伊人精品一区二区三区| 亚洲男女一区二区三区| 亚洲爆乳精品无码一区二区| 无码人妻av一区二区三区蜜臀| 精品国产亚洲一区二区三区| 无码人妻精品一区二区蜜桃网站 |