数据表结构

1.html页面

<!DOCTYPE html>
<html> <head> <title>注册</title>
<meta charset="UTF-8" />
<!--
js验证
--> <script type="text/javascript">

function validate_required(filed, alerttxt) {
with(filed) {
if (value == null || value == "") {
alert(alerttxt);
return false;
} else {
return true;
}
}
} function validate_form(thisform) {
with(thisform) {
if (validate_required(username, "用户名不能为空") == false) {
username.focus();
return false;
}
if (validate_required(pass1, "密码不能为空") == false) {
username.focus();
return false;
}
if (validate_required(pass2, "确认密码不能为空") == false) {
username.focus();
return false;
}
if (pass1.value != pass2.value) {
alert("两次密码不一致");
return false;
}
}
}
</script>
</head>
<!--
onSubmit="return validate(this)"这句,是一个验证表单的功能。当validate()这个函数返回值是true的时候,表单提交,反之则不提交。
-->
<body>
<form onsubmit="return validate_form(this) " action="jstest.php" method="post">
<div class="1">
<div class="1.1">
<div>
<label>用户名</label>
</div>
<div>
<input type="text" placeholder="请输入用户名号" name="username">
</div>
</div> <div class="1.2">
<div>
<label>密码</label>
</div>
<div>
<input type="password" value="" name="pass1">
</div>
</div> <div class="1.3">
<div>
<label>确认密码</label>
</div>
<div>
<input type="password" value="" placeholder="" name="pass2">
</div>
</div> </div> <div class="2"> <input type="submit" name="sub" id="sub" value="注册" />
</div>
</form> </body> </html>

2.php页面

jstest.php

<?php
require ("mysql_class.php");//引入数据库处理文件
$db = new Mysql("localhost", "root", "201122", "userdb");
if (isset($_POST["sub"])) { //获取表单数据
$username = $_POST["username"];
$pass1 = $_POST["pass1"];
$pass2 = $_POST["pass2"];
define("TABLENAME", "user_zhuce");
define("SEL", "where username='$username'");
define("COLE", "(username,password,password2)");
define("DATEE", "('$username','$pass1','$pass2')"); //信息是否为空
$db -> isnull($username, $pass1, $pass2);
//密码是否一致
$db -> issame($pass1, $pass2);
if ($pass1 == $pass2) {
//查询是否有相同的用户名
$sel = $db -> select(TABLENAME, SEL);
$row = $db -> row($sel);
$r = $row[0];
if ($r == 1) {
echo "<script type=" . "\"" . "text/javascript" . "\"" . ">" . "window.alert" . "(" . "\"" . "该用户名已被注册" . "\"" . ")" . ";" . "</script>";
echo "<script type=" . "\"" . "text/javascript" . "\"" . ">" . "window.location=" . "\"" . "index.html" . "\"" . "</script>";
exit ;
} //插入用户信息
$insert = $db -> insert(TABLENAME, COLE, DATEE);
$sel = $db -> select(TABLENAME, SEL);
$row = $db -> row($sel);
$r = $row[0];
if ($r == 1) {
echo "注册成功";
} $db -> dbClose(); }
}
?>

3.数据库处理页面

mysql_class.php

<?php
header("content-type:text/html;charset=utf-8");
class Mysql {
private $host;
//服务器地址
private $root;
//用户名
private $password;
//密码
private $database;
//数据库名 //通过构造函数初始化类
function Mysql($host, $root, $password, $database) {
$this -> host = $host;
$this -> root = $root;
$this -> password = $password;
$this -> database = $database;
$this -> connect();
} function connect() {
$this -> conn = mysql_connect($this -> host, $this -> root, $this -> password);
// if($this->conn){
// echo "连接mysql成功";
// }else{
// echo "连接mysql失败";
// }
// $this->conn=
mysql_select_db($this -> database, $this -> conn);
// if($this->conn){
// echo "连接db成功";
// }else{
// echo "连接db失败";
// }
mysql_query("set names utf8");
} function dbClose() {
mysql_close($this -> conn);
} function query($sql) {
return mysql_query($sql);
} function row($result) {
return mysql_fetch_row($result); } function select($tableName, $condition) {
return $this -> query("SELECT COUNT(*) FROM $tableName $condition");
} function insert($tableName, $fields, $value) {
$this -> query("INSERT INTO $tableName $fields VALUES$value");
} function isnull($input1,$input2,$input3){
if($input1==""||$input2==""||$input3==""){
echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."请填写完整(php)!"."\"".")".";"."</script>"; }
} function issame($password1,$password2){
if($password1!=$password2){
echo"<script type="."\""."text/javascript"."\"".">"."window.alert"."("."\""."两次密码不一致!(php)"."\"".")".";"."</script>"; }
} } ?>

最新文章

  1. .NET跨平台之运行与Linux上的Jexus服务器
  2. linux内核打印数据到串口控制台,printk数据不打印问题
  3. 自定义BadgeView
  4. Jmeter默认报告优化
  5. HDU 1372 Knight Moves (bfs)
  6. Excel公式无法重算,暂无法解决
  7. 树莓派3上安装Qt5
  8. 1 . Robberies (hdu 2955)
  9. ElasticSearch(6)-结构化查询
  10. weex 语法高亮
  11. JavaScript练习网站收集
  12. webapi框架搭建-创建项目(一)
  13. mysql的严格模式与无效字符编码问题
  14. mongodb4.0支持事务
  15. 弹出层-layui
  16. 大数据小视角3:CarbonData,来自华为的中国力量
  17. TestNG.xml参数配置-如何控制部分执行@test方法
  18. 20155326《Java程序设计》实验一实验报告
  19. 在c/c++中浮点数是否为0的判断
  20. 原型相关的方法isPrototypeOf、Object.getPrototypeOf、hasOwnProperty、Object.getOwnPropertyName、Object.keys

热门文章

  1. Nginx模块详解
  2. ElasticSearch 环境安装
  3. JSP---JSTL核心标签库的使用
  4. node-sass安装不成功的问题
  5. Java中数据类型转换&amp;基本类型变量和对象型变量
  6. web项目中获取spring的bean对象
  7. long转int
  8. 《数据结构与算法分析:C语言描述》复习——第十章“算法设计技巧”——Huffman编码
  9. USACO Section2.2 Subset Sums 解题报告 【icedream61】
  10. CMake Tutorial &amp; Example