PHP上傳表單到MySQL

前幾天寫了個的HTML的表單可是苦於本身的MySQL還沒弄好,相關知識也缺少,因此就把它晾在那了,去看了一點關於mysql的知識和一些相關的博客,後來就火燒眉毛的準備實施在本身的web服務器上了,第一個晚上寫了一點PHP的代碼,一邊看別人博客上的介紹,本身也慢慢的有了一些思路,而後本身也一遍寫代碼一邊改代碼,修修改改終於好了,而後就是數據庫那邊,本身建立了一個數據庫,如圖:php

也不知道大家能不能看清,反正我能看清楚,上面是我以前建立的一個數據庫是個中文命名的數據庫,大佬都是英文命名的,我這種菜雞就用中文吧,英文多了本身也不知道本身寫的些什麼玩意,相關編碼我也設置成了utf8的編碼,因此沒亂碼,查看編碼以下:html

看,菜雞的我早想到我會所有用中文字符,因此就所有設置成uft8了,言歸正傳。mysql

建立了數據庫以後又建立了也是中文命名的表單,固然,這個表單在我建立的數據庫裏面,因此我還須要切換數據庫:web

如圖,切換數據庫use {庫名}以後才查詢有哪些表單,剛開建立數據庫以後他也不會自動切換到新建立的數據庫,因此須要本身手動切換,use {庫名}命令是少有的幾個不用輸入結尾符號「;」的命令,輸入以後切換了數據庫,而後查看有哪些表單,show tables;這裏未知的數據庫仍是表單都須要加複數,當初也是英語沒學好,不知道大家需不須要我提醒,查看到有「用戶註冊」的一個表單,查看錶單詳情,屬於規則哈,不是數據詳情哈,describe {表名}; 咱們看到相關屬性,帳號,暱稱,密碼,QQ,其中帳號寫數據時數據格式爲int ,不容許爲空,設置爲主鍵,默認爲空,自動增長值,暱稱、密碼、QQ均爲text類型,也是都不容許爲空,默認爲空。當初建立表的時候是這樣的。sql

這是我電腦上的mysql輸入的,我還沒改字符就用英文將就一下,bname表明表名稱,id表明編號,name表明暱稱,password表明密碼,QQ就是QQ了,以這樣的樣子定義的。數據庫

表格就這樣建立好了,接下來插入一條數據,服務器

如圖,使用iinsert語句插入了一條數據,查詢一下數據,按照前後順序就是第六條了,網絡

證實數據庫沒問題了,如今回到相關的html與php頁面.session

PHP相關代碼:函數

 1 <?php
 2 session_start();
 3     if(isset($_POST["button"]))
 4     {
 5         $name=$_POST["name"];
 6         $password1=$_POST["password1"];
 7         $password2=$_POST["password2"];
 8         $qq=$_POST["qq"];
 9         //判斷字符長度
10         function utf8_strlen($string=null)
11         {
12             preg_match_all("/./us" ,$string,$match);
13             return count($match[0]);
14         }
15         //判斷暱稱長度
16         if(utf8_strlen($name)>=7|utf8_strlen($name)<=1)
17             $nameerr="暱稱不符合規則";
18         //判斷密碼長度
19         elseif(utf8_strlen($password1)<8|utf8_strlen($password1)>16)
20             $passworderr1="密碼不符合規則";
21         //判斷密碼是否一致
22         elseif($password1!=$password2)
23             $passworderr2="密碼不一致";
24         //判斷qq格式
25         elseif(utf8_strlen($qq)<5|utf8_strlen($qq)>11)
26             $emailerr="不符合QQ號格式";
27         else {
28             //鏈接數據庫
29             $conn=mysqli_connect("localhost","帳號","密碼");
30             if(!$conn)
31             //賦值提醒
32               $nameerr=$passworderr1=$passworderr2=$qqerr="註冊失敗,請聯繫站長!";
33             elseif($conn){
34                 $use="use 初璃兮微";
35                 if(mysqli_query($conn,$use)){
36                     $name=$_POST["name"];
37                     $password=$_POST["password1"];
38                     $qq=$_POST["qq"];
39                     $sql_insert="insert into 用戶註冊(暱稱,密碼,QQ) values('{$name}','{$password1}','{$qq}')";  
40                     if(mysqli_query($conn,$sql_insert))
41                         $nameerr=$passworderr1=$passworderr2=$qqerr="註冊成功";
42                     else $nameerr=$passworderr1=$passworderr2=$qqerr="註冊失敗";
43                 }
44                 else{
45                     echo "註冊失敗";
46                 }
47             }
48         }
49         
50     }
51 ?>

HTML相關代碼:

 1 <form action="" method="post" onsubmit="return checklength">
 2 <li>
 3 <label>會員暱稱:</label>
 4 <input value="<?php if(!empty($_POST['name'])) echo $_POST['name'] ?>" type="text" name="name" maxlength="6" min="2" class="text" placeholder="2-6位中文/數字/英文"/>
 5 <span class="tixing">*<?php echo $nameerr;?></span>
 6 </li>
 7 <li>
 8 <label>登陸密碼:</label>
 9 <input value="<?php if(!empty($_POST['password1'])) echo $_POST['password1'] ?>" type="password" name="password1" maxlength="16" min="8" class="text" placeholder="8-16位符號/數字/英文"/>
10 <span class="tixing">*<?php echo $passworderr1;?></span>
11 </li>
12 <li>
13 <label>確認密碼:</label>
14 <input value="<?php if(!empty($_POST['password2'])) echo $_POST['password2'] ?>" type="password" name="password2" maxlength="16" class="text" min="8" placeholder="再次輸入密碼"/>
15 <span class="tixing">*<?php echo $passworderr2;?></span>
16 </li>
17 <li>
18 <label>關聯QQ :</label>
19 <input value="<?php if(!empty($_POST['qq'])) echo $_POST['qq'] ?>" type="text" name="qq" maxlength="11" min="5" class="text" placeholder="用於找回密碼與關聯頭像"/>
20 <span class="tixing">*<?php echo $qqerr;?></span>
21 </li>
22 <li>
23 <label>會員性別:</label>
24 <input type="radio" name="xingbie" value="nan" checked="checked"/><img src="ziyuan/Male.gif" /> 
25 <input type="radio" name="xingbie" value="nv"/><img src="ziyuan/Female.gif"/>
26 </li>
27 <li>
28 <label>基礎狀況:</label>
29 <input type="radio" name="qk" value="value" checked="checked"/><label>興趣</label>
30 <input type="radio" name="qk" value="value"/><label>專職在崗</label>
31 <input type="radio" name="qk" value="value"/><label>專業學生</label>
32 </li>
33 <li>
34 <label>出生日期:</label>
35 <input type="date" name="date" class="text">
36 </li>
37 <li>
38 <span class="tixing">*星號紅色表明必填寫字段</span><br /><br />
39 <input type="submit" value="贊成如下條款並提交註冊信息" class="anniu" name="button"/>
40 <input type="reset" value="重置" class="anniu"/>
41 </li><br /><br />
42 <li>
43 <img src="ziyuan/read.gif"/>閱讀《條款協議》
44 </li>
45 <li class="xieyi">
46 <textarea class="xieyi">本協議由您與網站製做人共同締結,本協議具備合同效力。本協議中協議雙方合稱協議方,網站製做人在協議中亦成爲「初璃兮微」。本協議中「官方平臺」指由初璃兮微運營的網絡交易平臺,包括網站,域名爲*****。平臺商城,域名爲待定;</textarea>
47 </li>
48 </form>

html的表單採用post提交,交給post以後處理流程就是先檢測格式是否符合,不符合就提醒,html頁面提醒在編輯行後面span標籤上有相關代碼,固然爲了防止提交失敗以後表單被刷新,我就添加了默認值,也就是html的value後面的代碼。這個是重點,須要記住,之後可能還會常常用到,嘿嘿,而後PHP代碼檢測若是都符合條件,那麼就執行最後一項,交給服務器處理,鏈接到MySQL,鏈接失敗提示:」註冊失敗,請聯繫站長」,鏈接成功執行下一步,切換數據庫的變量,採用mysqli_query函數來鏈接,切換數據庫,切換成功把表單的數據存進相關變量,而後採用myql的寫入語句寫進數據庫,寫入則提示:註冊成功,不然就提示:註冊失敗。就是這樣。今天又學會了一個東西,加油。

相關文章
相關標籤/搜索