主頁(yè) > 知識(shí)庫(kù) > php如何把表單內(nèi)容提交到數(shù)據(jù)庫(kù)

php如何把表單內(nèi)容提交到數(shù)據(jù)庫(kù)

熱門(mén)標(biāo)簽:咸寧銷(xiāo)售電銷(xiāo)機(jī)器人系統(tǒng) 外呼系統(tǒng)能給企業(yè)帶來(lái)哪些好處 400電話蘭州申請(qǐng)請(qǐng) 開(kāi)發(fā)地圖標(biāo)注類網(wǎng)站 廣東廣州在怎么申請(qǐng)400電話 百度地圖標(biāo)注偏差 百度地圖怎樣標(biāo)注圖標(biāo) 余姚電話機(jī)器人 電銷(xiāo)機(jī)器人問(wèn)門(mén)薩維品牌my

一般朋友們逛一些網(wǎng)站的時(shí)候,想使用網(wǎng)站或者看到更多網(wǎng)站里的內(nèi)容,網(wǎng)站會(huì)要求用戶進(jìn)行新用戶的注冊(cè),網(wǎng)站會(huì)把新用戶的注冊(cè)信息存入數(shù)據(jù)庫(kù)中,需要的時(shí)候再進(jìn)行提取。

這樣網(wǎng)站就會(huì)首先創(chuàng)建自己的數(shù)據(jù)庫(kù)和對(duì)應(yīng)的表,我們這里使用php創(chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)和表,使用phpMyAdmin來(lái)創(chuàng)建MySql數(shù)據(jù)庫(kù)和表。例如創(chuàng)建一個(gè)test數(shù)據(jù)庫(kù),其示例的代碼如下所示:

?php
// 創(chuàng)建連接
$conn = new mysqli("localhost", "uesename", "password");
// 檢測(cè)連接
if ($conn->connect_error)
{ 
 die("連接失敗: " . $conn->connect_error);}
 // 創(chuàng)建數(shù)據(jù)庫(kù)
 $sql = "CREATE DATABASE test";
  if ($conn->query($sql) === TRUE)
  { 
  echo "數(shù)據(jù)庫(kù)創(chuàng)建成功";
  } else { 
  echo "Error creating database: " . $conn->error;
  }
 $conn->close();
?>

然后使用CREATE TABLE 語(yǔ)句用于創(chuàng)建 MySQL 表,設(shè)置如下幾個(gè)字段。

  • id : 它是唯一的,類型為 int ,并選擇主鍵。
  • uesrname : 用戶名,類型為 varchar, 長(zhǎng)度為30。
  • password : 密碼,類型為 varchar, 長(zhǎng)度為30。
  • confirm:確認(rèn)密碼,類型為 varchar, 長(zhǎng)度為30。
  • email : 郵箱,類型為 varchar, 長(zhǎng)度為30。

接著使用sql語(yǔ)句來(lái)創(chuàng)建數(shù)據(jù)庫(kù)表,其代碼顯示如下:

?php
 // 創(chuàng)建連接
 $conn = new mysqli("localhost", "uesename", "password","test");
 // 檢測(cè)連接
 if ($conn->connect_error)
 { 
 die("連接失敗: " . $conn->connect_error);
 }
 // 使用 sql 創(chuàng)建數(shù)據(jù)表
 $sql = "CREATE TABLE login (
 id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
 username VARCHAR(30) NOT NULL,
 password VARCHAR(30) NOT NULL,
 confirm VARCHAR(30) NOT NULL,
 email VARCHAR(30) NOT NULL,
 )ENGINE=InnoDB DEFAULT CHARSET=utf8 ";
 if ($conn->query($sql) === TRUE)
 { 
 echo "Table MyGuests created successfully";
 } else { 
 echo "創(chuàng)建數(shù)據(jù)表錯(cuò)誤: " . $conn->error;
 }
 $conn->close();
?>

上面我們創(chuàng)建好了數(shù)據(jù)庫(kù)和表,下面建立一個(gè)簡(jiǎn)單的表單注冊(cè)的前端頁(yè)面,這里的表單頁(yè)面很簡(jiǎn)單,用戶名,密碼,密碼確認(rèn),注冊(cè)郵箱等等幾個(gè)簡(jiǎn)單的文本框。其代碼如下:

!DOCTYPE html>
html>
head>
 title>用戶注冊(cè)頁(yè)面/title>
 meta charset="UTF-8"/>
 style type="text/css">
 *{margin:0px;padding:0px;}
 ul{
  width:400px;
  list-style:none;
  margin:50px auto;
 }
 li{
  padding:12px;
  position:relative;
 }
 label{
  width:80px;
  display:inline-block;
  float:left;
  line-height:30px;
 }
 input[type='text'],input[type='password']{
  height:30px;
 }
 img{
  margin-left:10px;
 }
 input[type="submit"]{
  margin-left:80px;
  padding:5px 10px;
 }
 /style>
/head>
body>
form action="zhuce.php" method="post">
 ul>
 li>
  label>用戶名:/label>
  input type="text" name="username" placeholder="請(qǐng)輸入注冊(cè)賬號(hào)"/>
 /li>
 li>
  label>密 碼:/label>
  input type="password" name="password" placeholder="請(qǐng)輸入密碼" />
 /li>
 li>
  label>確認(rèn)密碼:/label>
  input type="password" name="confirm" placeholder="請(qǐng)?jiān)俅屋斎朊艽a" />
 /li>
 li>
  label>郵 箱:/label>
  input type="text" name="email" placeholder="請(qǐng)輸入郵箱"/>
 /li>
 li>
  input type="submit" value="注冊(cè)" />
 /li>
 /ul>
/form>
/body>
/html>

接下來(lái)就需要使用php代碼來(lái)實(shí)現(xiàn)新用戶提交的信息給提交到數(shù)據(jù)庫(kù),使用POST方式進(jìn)行值的傳遞和獲取。

首先需要連接前面創(chuàng)建完成的數(shù)據(jù)庫(kù)和表,因?yàn)樾掠脩糇?cè)的用戶名,密碼等信息需要保存到表中的對(duì)應(yīng)字段里面。存入數(shù)據(jù)庫(kù)表之前先對(duì)提交的數(shù)據(jù)進(jìn)行一些判斷驗(yàn)證,比如不符合要求的用戶名,郵箱等需要有過(guò)濾和錯(cuò)誤的提示,還要防止用戶名如果被其他用戶注冊(cè),則需要提示您將不能再使用這個(gè)用戶名,這是先讀取數(shù)據(jù)庫(kù)已經(jīng)存在的用戶名,然后進(jìn)行判斷。

簡(jiǎn)單來(lái)說(shuō)就是將表單提交的數(shù)據(jù)都存入變量,然后進(jìn)行密碼和驗(yàn)證碼的判斷,都正確以后,將用戶信息存入數(shù)據(jù)庫(kù)并將數(shù)據(jù)庫(kù)存放用戶信息的表中所有數(shù)據(jù)提取打印出來(lái)。說(shuō)白了,后半句就是數(shù)據(jù)存入和提取。其具體的代碼如下所示:

?php
session_start();
header("Content-type:text/html;charset=utf-8");
$link = mysqli_connect('localhost','root','root','test');
if (!$link) {
 die("連接失敗:".mysqli_connect_error());
}
$username = $_POST['username'];
$password = $_POST['password'];
$confirm = $_POST['confirm'];
$email = $_POST['email'];
if($username == "" || $password == "" || $confirm == "" || $email == "")
{
 echo "script>alert('信息不能為空!重新填寫(xiě)');window.location.href='zhuce.html'/script>";
} elseif ((strlen($username)  3)||(!preg_match('/^\w+$/i', $username))) {
 echo "script>alert('用戶名至少3位且不含非法字符!重新填寫(xiě)');window.location.href='zhuce'/script>";
 //判斷用戶名長(zhǎng)度
}elseif(strlen($password)  5){
 echo "script>alert('密碼至少5位!重新填寫(xiě)');window.location.href='zhuce.html'/script>";
 //判斷密碼長(zhǎng)度
}elseif($password != $confirm) {
 echo "script>alert('兩次密碼不相同!重新填寫(xiě)');window.location.href='zhuce.html'/script>";
 //檢測(cè)兩次輸入密碼是否相同
} elseif (!preg_match('/^[\w\.]+@\w+\.\w+$/i', $email)) {
 echo "script>alert('郵箱不合法!重新填寫(xiě)');window.location.href='zhuce.html'/script>";
 //判斷郵箱格式是否合法
} elseif(mysqli_fetch_array(mysqli_query($link,"select * from login where username = '$username'"))){
 echo "script>alert('用戶名已存在');window.location.href='zhuce.html'/script>";
} else{
 $sql= "insert into login(username, password, confirm, email)values('$username','$password','$confirm','$email')";
 //插入數(shù)據(jù)庫(kù)
 if(!(mysqli_query($link,$sql))){
 echo "script>alert('數(shù)據(jù)插入失敗');window.location.href='zhuce.html'/script>";
 }else{
 echo "script>alert('注冊(cè)成功!)/script>";
 }
}
?>

朋友們可以自己動(dòng)手進(jìn)行各種操作和嘗試,熟練以后就會(huì)對(duì)表單操作,數(shù)據(jù)庫(kù)的操作有一定深入的理解,為以后的開(kāi)發(fā)打下良好的基礎(chǔ)。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PHP使用HTML5 FormData對(duì)象提交表單操作示例
  • 微信小程序?qū)W習(xí)筆記之表單提交與PHP后臺(tái)數(shù)據(jù)交互處理圖文詳解
  • php防止表單重復(fù)提交實(shí)例講解
  • PHP如何通過(guò)表單直接提交大文件詳解
  • php 提交表單 關(guān)閉layer彈窗iframe的實(shí)例講解
  • php實(shí)現(xiàn)表單提交上傳文件功能
  • PHP實(shí)現(xiàn)防止表單重復(fù)提交功能【基于token驗(yàn)證】
  • 解決php 處理 form 表單提交多個(gè) name 屬性值相同的 input 標(biāo)簽問(wèn)題
  • PHP如何防止用戶重復(fù)提交表單

標(biāo)簽:重慶 麗江 衡陽(yáng) 巴彥淖爾 十堰 銅陵 臨沂 鷹潭

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php如何把表單內(nèi)容提交到數(shù)據(jù)庫(kù)》,本文關(guān)鍵詞  php,如何,把,表單,內(nèi)容,提,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php如何把表單內(nèi)容提交到數(shù)據(jù)庫(kù)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于php如何把表單內(nèi)容提交到數(shù)據(jù)庫(kù)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章