Maison > Article > développement back-end > Explication détaillée du développement de sites interactifs simples avec PHP MYSQL
Cet article présente principalement en détail le développement de sites interactifs simples PHP MYSQL, qui a une certaine valeur de référence. Les amis intéressés peuvent s'y référer
Objectif : Utiliser PHP et MYSQL pour simuler la gestion des autorisations Implémentation du système
L'utilisateur général ne peut afficher que les autres informations utilisateur et ne peut pas modifier, ajouter et supprimer des opérations. L'utilisateur root peut effectuer les trois opérations ci-dessus.
Idées d'implémentation
1. Créez deux tables de données dans la base de données MySQL. Une table de données stocke les noms d'utilisateur et les mots de passe pour la vérification de la connexion, et l'autre stocke des informations de base telles que les autorisations des utilisateurs.
2. Lors de la soumission du formulaire de connexion, vérifiez d'abord si l'utilisateur existe dans la base de données. S'il n'existe pas, une erreur sera signalée. S'il existe, le mot de passe sera vérifié. , une erreur sera signalée. Si le mot de passe est correct, la connexion affichera toutes les informations stockées dans la base de données. Informations utilisateur et nom d'utilisateur de connexion actuel.
3. Lorsque l'utilisateur effectue des opérations d'ajout ou de suppression, déterminez d'abord si les autorisations sont suffisantes. S'il y a une autorisation, terminez l'opération correspondante et modifiez le contenu de la base de données. Sinon, il vous indiquera qu'il n'y a pas d'autorisation
Mise en œuvre spécifique
1. La page de destination
<center> <form method="post" action="<?php echo $_SERVER['SCRIPT_NAME'] ?>"> 用户名: <input type="text" name="user_name"> 密码: <input type="text" name="password"> <input type="Submit" name="submit" value="登陆"> </form> </center>
L'effet est le suivant :
2. Connectez-vous à la base de données pour vérifier le nom de connexion et le mot de passe
//登陆处理 if (isset($_POST['submit'])) { // 用户名输入为空 if($_POST['user_name'] == '') // 调用javascript函数动态提醒 echo "<script type='text/javascript'>dis_alert(\"用户名\",1);</script>";// 密码输入为空 if($_POST['password'] == '') // 调用javascript函数动态提醒 echo "<script type='text/javascript'>dis_alert(\"密码\",1);</script>"; // 用户名与密码均不为空 $user_name = $_POST['user_name']; //链接数据库,从中读出用户名和密码 $db = mysql_connect("localhost", "root", "123456"); mysql_select_db("linyimin", $db); $result = mysql_query("select * from login where user_name = '$user_name'"); $num = mysql_num_rows($result); //判断用户输入的用户名存在,验证密码 if($num != 0) { $user_name = mysql_result($result,0,'user_name'); $password = mysql_result($result,0,'password'); if(strcmp($password,$_POST['password']) != 0) { echo "密码错误"; //密码错误,报错 $password = $_POST['password']; echo "<script type='text/javascript'>dis_alert('密码错误',3);</script>"; } // 密码正确 else { session_unset(); session_start(); $_SESSION['user_name'] = $_POST[user_name]; header("Location:http://localhost/display.php"); exit; } } // 用户输入的用户名不存在,报错 else if($num == 0) { // 用户名不存在,报错 $user_name = $_POST['user_name']; echo "<script type='text/javascript'>dis_alert(\"$user_name\",2);</script>"; } mysql_close($db); }//登陆处理结束
Fonction de rappel d'erreur de saisie
<script type="text/javascript"> // 登陆错误提醒 function dis_alert(var1, var2) { // 用户名和密码不能为空提醒 if(var2 == 1) { alert(var1 + " 不能为空,请重新输入"); history.back(-1); } // 用户名不存在错误提醒 if(var2 == 2) { alert("该用户名 " + var1 + " 不存在,请重新输入"); history.back(-1); } // 密码错误提醒 if(var2 == 3) { alert("密码错误,请重新输入"); history.back(-1); } } </script>
Rendu de rappel d'erreur :
3. Une fois la connexion réussie, toutes les informations utilisateur dans la base de données et le nom d'utilisateur de connexion actuel sont affichés
// 获取登陆名 session_start(); $NAME = $_SESSION['user_name']; // 连接数据库,获取数据并显示 function display() { global $NAME; $db = mysql_connect("localhost", "root", "123456"); mysql_select_db("linyimin",$db); $sql = "select * from admin_info"; $result = mysql_query($sql); // 显示信息表 echo "<h3 align=right color=#FFFFFF> 当前用户:$NAME</h6>"; echo "<table border = 0 align = center width = 1000></br>"; // 添加超链接 echo "<tr align = center><th> <a href =\"display.php?add=yes\">ADD</a></th><br>"; // 修改添加超连接 echo "<th> <a href =\"display.php?update=yes\">UPDATE</a></th><br>"; // 删除超链接 echo "<th> <a href =\"display.php?delete=yes\">DELETE</a></th></tr><br>"; echo "</table>"; echo "<table border = 2 align = center width = 1000></br>"; // 表头 echo "<tr><th colspan=\"3\">管理员权限表</th></tr><br>"; echo "<tr align = center><td>姓名</td><td>权限</td><td>职务</td></tr><br>"; while($row = mysql_fetch_row($result)) { // 显示管理员信息并通过超链接调用处理函数 echo "<tr align = center><td>$row[0]</td>"; echo "<td>$row[1]</td>"; echo "<td>$row[2]</td></tr>"; } echo "</table>"; mysql_close($db); }
L'effet d'affichage est le suivant :
4. Mise en œuvre des opérations de modification, suppression et ajout
Modifier et ajouter une page
<center> <form method="post" action="<?php echo $_SERVER['URL'] ?>"> 姓名: <input type="text" name="user_name"> 权限: <input type="text" name="pemission"> 职务: <input type="text" name="position"> <input type="Submit" name="update" value="提交"> </form> </center>
L'effet est le suivant :
Supprimer la page
<center> <form method="post" action="<?php echo $_SERVER['URL'] ?>" onsubmit="return confirm('请确认删除');"> 姓名: <input type="text" name="user_name"> <input type="submit" name="update" value="删除"> </center>
Le rendu est le suivant :
Mise en œuvre
// 调用修改函数 if ($_GET[update]) { modify("update"); } // 调用添加函数 elseif($_GET[add]) { modify("add"); } elseif($_GET[delete]) { modify("delete"); }
Implémentation de la fonction modifier()
// 修改数据函数 /* 点击修改超链接,跳转到修改页面 表单中,名字项指定要修改记录 权限和职务项为可修改内容 */ function modify($operation) { if(isset($_POST['update'])) { // 有root权限修改,修改 if($operation == "update" && judge("update")) { $user_name = $_POST[user_name]; $sql = "UPDATE admin_info SET pemission = '$_POST[pemission]', position ='$_POST[position]' WHERE user_name = '$user_name'"; mysql_query($sql); mysql_close($db); display(); } // 添加 elseif(judge("add") && $operation == "add") { $user_name = $_POST[user_name]; $sql = "insert into admin_info (user_name, pemission, position) values ('$_POST[user_name]','$_POST[pemission]','$_POST[position]')"; mysql_query($sql); mysql_close($db); display(); } // 删除 elseif(judge("delete") && $operation == "delete") { $user_name = $_POST[user_name]; // 获取确认情况 $sql = "delete from admin_info where user_name = \"$user_name\""; mysql_query($sql); } } }
Implémentation de la fonction juge( )
// 判断修改用户名是否存在和该用户是否具有权限 function judge($operation) { global $NAME; // 修改用户名 $user_name = $_POST['user_name']; // 连接数据库,获取数据 $db = mysql_connect("localhost", "root", "123456"); mysql_select_db("linyimin",$db); // 该用户是否存在 $sql = "select * from admin_info where user_name = \"$user_name\""; $result = mysql_query($sql); $num = mysql_num_rows($result); // 输入名称不存在 if ($num == 0 && $operation != "add") { $user_name = $_POST['user_name']; echo "<script type='text/javascript'>dis_alert(\"$user_name\",2);</script>"; return 0; } else { // 判断有没有权限(只有root权限可以修改) $sql = "select * from admin_info where user_name = \"$NAME\""; $result = mysql_query($sql); $pemission = mysql_result($result,0,'pemission'); // 没有root权限,报错 if(strcmp($pemission,"root") != 0) { $user_name = $_POST['user_name']; echo "<script type='text/javascript'>dis_alert(\"$user_name\",1);</script>"; return 0; } else return 1; } }
Enregistrement des techniques courantes
1. Utiliser la session pour réaliser l'utilisation de plusieurs fichiers php La méthode de la même variable
ouvre la session dans le texte qui définit la variable et stocke la valeur dans la session
usersession_unset(); session_start(); $_SESSION['变量名'] = "值";
avant d'utiliser Ouvrir la session dans le texte de la variable et retirer la variable
session_start(); $NAME = $_SESSION['变量名'];
2. PHP se connecte à la base de données MYSQL et effectue des opérations de recherche, d'ajout et de suppression sur la base de données
Se connecter à la base de données
// 连接数据库 $db = mysql_connect("url", "用户名", "密码"); // 选择数据库 mysql_select_db("数据库名称",$db);
Rechercher
$sql = "select * from admin_info where 字段名 = \"查找值\""; $result = mysql_query($sql); // 对查找返回结果进行操作 // 获取查找返回记录数条数 $num = mysql_num_rows($result); // 获取查找结果第一条记录的user_name字段值 $user_name = mysql_result($result,0,'user_name'); // 逐条取出查询记录 while($row = mysql_fetch_row($result)) { 相关操作; }
Insérer
$sql = "insert into 数据表 (字段1, 字段2, 字段3) values ('值1','值2','值3')"; mysql_query($sql);
Supprimer
$sql = "delete from 数据表 where 字段名 = \"查找值\""; mysql_query($sql); // 关闭数据库 mysql_close($db);
3. Rappel avant soumission du formulaire
< ;form method="post" action="url" onsubmit="return confirm('Veuillez confirmer la suppression');">
4. Appelez la fonction javascript en php
<?php echo "<script type='text/javascript'>javascript函数;</script>"; ?>
Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun.
Recommandations associées :
framework php CodeIgniterBase de donnéesÉtapes de configuration détaillées
PHP implémente l'utilisation de mysqli pour faire fonctionner labase de donnéesMySQLMéthode
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!