Maison  >  Article  >  développement back-end  >  PHP implémente la soumission du contenu du formulaire à la base de données

PHP implémente la soumission du contenu du formulaire à la base de données

王林
王林avant
2020-01-25 21:46:484068parcourir

PHP implémente la soumission du contenu du formulaire à la base de données

Utilisez d'abord php pour créer une base de données et une table simples, puis utilisez phpMyAdmin pour créer la base de données et la table MySql. Par exemple, créez une base de données de test comme suit :

<?php
// 创建连接
$conn = new mysqli("localhost", "uesename", "password");
// 检测连接
if ($conn->connect_error)
{ 
 die("连接失败: " . $conn->connect_error);}
 // 创建数据库
 $sql = "CREATE DATABASE test";
  if ($conn->query($sql) === TRUE)
  { 
  echo "数据库创建成功";
  } else { 
  echo "Error creating database: " . $conn->error;
  }
 $conn->close();
?>

Utilisez ensuite l'instruction CREATE TABLE pour créer une table MySQL et définissez les champs suivants.

(Partage de didacticiels vidéo d'apprentissage associés : tutoriel vidéo php)

id : il est unique, tapez int et sélectionnez la clé primaire.

uesrname : nom d'utilisateur, le type est varchar, la longueur est 30.

mot de passe : mot de passe, le type est varchar, la longueur est 30.

confirmer : Confirmez le mot de passe, le type est varchar, la longueur est 30.

e-mail : e-mail, le type est varchar, la longueur est 30.

Utilisez ensuite les instructions SQL pour créer des tables de base de données. Le code est présenté ci-dessous :

<?php
 // 创建连接
 $conn = new mysqli("localhost", "uesename", "password","test");
 // 检测连接
 if ($conn->connect_error)
 { 
 die("连接失败: " . $conn->connect_error);
 }
 // 使用 sql 创建数据表
 $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 "创建数据表错误: " . $conn->error;
 }
 $conn->close();
?>

Nous avons créé la base de données et les tables ci-dessus, et maintenant nous allons créer un front-end simple. page d'inscription au formulaire. La page du formulaire ici est très simple, avec quelques zones de texte simples telles que le nom d'utilisateur, le mot de passe, la confirmation du mot de passe, l'e-mail d'inscription, etc. Le code est le suivant :

<!DOCTYPE html>
<html>
<head>
 <title>用户注册页面</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=&#39;text&#39;],input[type=&#39;password&#39;]{
  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="请输入注册账号"/>
 </li>
 <li>
  <label>密 码:</label>
  <input type="password" name="password" placeholder="请输入密码" />
 </li>
 <li>
  <label>确认密码:</label>
  <input type="password" name="confirm" placeholder="请再次输入密码" />
 </li>
 <li>
  <label>邮 箱:</label>
  <input type="text" name="email" placeholder="请输入邮箱"/>
 </li>
 <li>
  <input type="submit" value="注册" />
 </li>
 </ul>
</form>
</body>
</html>

Ensuite, vous devez utiliser le code PHP pour soumettre les informations soumises par le nouvel utilisateur à la base de données, et utiliser la méthode POST pour transférer et obtenir la valeur.

Tout d'abord, vous devez vous connecter à la base de données et à la table créées précédemment, car le nom d'utilisateur, le mot de passe et les autres informations enregistrées par le nouvel utilisateur doivent être enregistrés dans les champs correspondants de la table. Avant de stocker les données dans la table de base de données, effectuez quelques jugements et vérifications sur les données soumises. Par exemple, les noms d'utilisateur, les e-mails, etc. qui ne répondent pas aux exigences doivent être filtrés et des invites d'erreur sont également nécessaires. enregistré par d'autres utilisateurs, vous devez être informé que vous ne pourrez plus utiliser ce nom d'utilisateur, il s'agit d'abord de lire le nom d'utilisateur qui existe déjà dans la base de données, puis de porter un jugement.

Pour faire simple, les données soumises par le formulaire sont stockées dans des variables, puis le mot de passe et le code de vérification sont jugés une fois corrects, les informations utilisateur sont stockées dans la base de données et la base de données stocke toutes. les données du tableau d’informations utilisateur. Extrayez-les et imprimez-les. Pour parler franchement, la seconde moitié de la phrase concerne le stockage et la récupération de données. Le code spécifique est le suivant :

<?php
session_start();
header("Content-type:text/html;charset=utf-8");
$link = mysqli_connect(&#39;localhost&#39;,&#39;root&#39;,&#39;root&#39;,&#39;test&#39;);
if (!$link) {
 die("连接失败:".mysqli_connect_error());
}
$username = $_POST[&#39;username&#39;];
$password = $_POST[&#39;password&#39;];
$confirm = $_POST[&#39;confirm&#39;];
$email = $_POST[&#39;email&#39;];
if($username == "" || $password == "" || $confirm == "" || $email == "")
{
 echo "<script>alert(&#39;信息不能为空!重新填写&#39;);window.location.href=&#39;zhuce.html&#39;</script>";
} elseif ((strlen($username) < 3)||(!preg_match(&#39;/^\w+$/i&#39;, $username))) {
 echo "<script>alert(&#39;用户名至少3位且不含非法字符!重新填写&#39;);window.location.href=&#39;zhuce&#39;</script>";
 //判断用户名长度
}elseif(strlen($password) < 5){
 echo "<script>alert(&#39;密码至少5位!重新填写&#39;);window.location.href=&#39;zhuce.html&#39;</script>";
 //判断密码长度
}elseif($password != $confirm) {
 echo "<script>alert(&#39;两次密码不相同!重新填写&#39;);window.location.href=&#39;zhuce.html&#39;</script>";
 //检测两次输入密码是否相同
} elseif (!preg_match(&#39;/^[\w\.]+@\w+\.\w+$/i&#39;, $email)) {
 echo "<script>alert(&#39;邮箱不合法!重新填写&#39;);window.location.href=&#39;zhuce.html&#39;</script>";
 //判断邮箱格式是否合法
} elseif(mysqli_fetch_array(mysqli_query($link,"select * from login where username = &#39;$username&#39;"))){
 echo "<script>alert(&#39;用户名已存在&#39;);window.location.href=&#39;zhuce.html&#39;</script>";
} else{
 $sql= "insert into login(username, password, confirm, email)values(&#39;$username&#39;,&#39;$password&#39;,&#39;$confirm&#39;,&#39;$email&#39;)";
 //插入数据库
 if(!(mysqli_query($link,$sql))){
 echo "<script>alert(&#39;数据插入失败&#39;);window.location.href=&#39;zhuce.html&#39;</script>";
 }else{
 echo "<script>alert(&#39;注册成功!)</script>";
 }
}
?>

Articles et tutoriels connexes recommandés : tutoriel php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer