Heim  >  Artikel  >  Backend-Entwicklung  >  PHP implementiert die Übermittlung von Formularinhalten an die Datenbank

PHP implementiert die Übermittlung von Formularinhalten an die Datenbank

王林
王林nach vorne
2020-01-25 21:46:484085Durchsuche

PHP implementiert die Übermittlung von Formularinhalten an die Datenbank

Verwenden Sie zunächst PHP, um eine einfache Datenbank und Tabelle zu erstellen, und verwenden Sie phpMyAdmin, um die MySql-Datenbank und -Tabelle zu erstellen. Erstellen Sie beispielsweise eine Testdatenbank wie folgt:

<?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();
?>

Verwenden Sie dann die CREATE TABLE-Anweisung, um eine MySQL-Tabelle zu erstellen und die folgenden Felder festzulegen.

(Weitergabe verwandter Lernvideo-Tutorials: PHP-Video-Tutorial)

id: Es ist eindeutig, der Typ ist int und Sie wählen den Primärschlüssel aus.

uesrname: Benutzername, Typ ist Varchar, Länge ist 30.

Passwort: Passwort, Typ ist Varchar, Länge ist 30.

Bestätigen: Passwort bestätigen, Typ ist Varchar, Länge ist 30.

E-Mail: E-Mail, Typ ist Varchar, Länge ist 30.

Verwenden Sie dann SQL-Anweisungen, um Datenbanktabellen zu erstellen. Der Code wird unten angezeigt:

<?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();
?>

Wir haben die Datenbank und die Tabellen oben erstellt und erstellen jetzt ein einfaches Frontend Seite zur Formularregistrierung Die Formularseite hier ist sehr einfach, mit ein paar einfachen Textfeldern wie Benutzername, Passwort, Passwortbestätigung, Registrierungs-E-Mail usw. Der Code lautet wie folgt:

<!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>

Als Nächstes müssen Sie PHP-Code verwenden, um die vom neuen Benutzer übermittelten Informationen an die Datenbank zu senden, und die POST-Methode verwenden, um den Wert zu übertragen und abzurufen.

Zuerst müssen Sie eine Verbindung zur zuvor erstellten Datenbank und Tabelle herstellen, da der Benutzername, das Passwort und andere vom neuen Benutzer registrierte Informationen in den entsprechenden Feldern der Tabelle gespeichert werden müssen. Bevor Sie die Daten in der Datenbanktabelle speichern, müssen Sie einige Beurteilungen und Überprüfungen der übermittelten Daten vornehmen. Beispielsweise müssen Benutzernamen und E-Mails gefiltert werden, die die Anforderungen nicht erfüllen. Außerdem sind Fehlermeldungen erforderlich Von anderen Benutzern müssen Sie darauf hingewiesen werden, dass Sie dies nicht tun können. Um diesen Benutzernamen erneut zu verwenden, müssen Sie zunächst den Benutzernamen lesen, der bereits in der Datenbank vorhanden ist, und dann ein Urteil fällen.

Um es einfach auszudrücken: Die über das Formular übermittelten Daten werden in Variablen gespeichert und dann werden das Passwort und der Bestätigungscode beurteilt. Nachdem sie korrekt sind, werden die Benutzerinformationen in der Datenbank gespeichert und die Datenbank speichert alles Die Daten in der Benutzerinformationstabelle extrahieren und ausdrucken. Um es ganz klar auszudrücken: In der zweiten Hälfte des Satzes geht es um das Speichern und Abrufen von Daten. Der spezifische Code lautet wie folgt:

<?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>";
 }
}
?>

Empfohlene verwandte Artikel und Tutorials: php-Tutorial

Das obige ist der detaillierte Inhalt vonPHP implementiert die Übermittlung von Formularinhalten an die Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen