想写就会尽快去写。如果用php写了就一定要用nodejs写出来啊,不写是小狗啊!

补充一下,想要实现的功能:

1.用户名重复检测

2.检测信息填写是否完整

3.邮箱是否已经被注册

4.实现ajax无刷新

5.注册成功后跳转到一个index导航页面,并且右上角显示用户名

6.index导航页面中有导航栏,分别是:首页(显示文章) 发布文章页面(文章实现可编辑)、可评论,可分享、可赞...

7.密码长度检测并提示

html文件叫1.html,文件代码:

<!DOCTYPE html>
<html>
<head>
<title>adc</title>
<meta charset="utf-8">
</head>
<body> <form action="zhuce.php" method="post">
<p><input id="user" name="user" type="text" placeholder="用户名"/></p>
<p><input id="psd1" name="psd1" type="password" placeholder="密码"/></p>
<p><input id="psd2" name="psd2" type="password" placeholder="验证密码"/></p>
<p><input id="eml" name="eml" type="email" placeholder="邮箱"/></p>
<p><input id="sbt" name="sbt" type="submit" placeholder="提交"/></p>
</form>
</body>
</html>

php文件名为zhuce.php,代码:

<?php
header("content-type:text/html;charset=utf-8");//这个貌似是设置字符编码吧,不然的话页面输出回事乱码 //开启session,b不明白?没关系,我待会再在下面单独说
session_start(); //接收表单传递的用户名和密码
$name=$_POST['user'];//$_POST[],这个大神们都应该知道,就是获取前端表单传回来的数据,并且是通过input的name属性值来获取,看到没?我index.html中有一个input的name值是user的
$pwd=$_POST['psd1'];//以下同上
$repwd=$_POST['psd2'];
$email=$_POST['eml'];
//下面判断信息是不是输入完整
if(empty($name)||empty($pwd)||empty($repwd)||empty($email)){
echo "<script>alert('你逗我?信息输入没完整');</script>";
echo "<script>window.location='index.html';</script>";
}else
//判断密码是否一 致
if ($pwd!=$repwd) {
echo"<script>alert('两次密码输入不一致,请重新输入');</script>";
echo"<script>location='index.html'</script>";
}else{
//通过php连接到mysql数据库
$conn=mysqli_connect("localhost","root","",'zhuce');
//选择数据库 $sql1 = "SELECT * FROM t1 WHERE username='$name'";
$result = mysqli_query($conn,$sql1);
$rows = mysqli_num_rows($result);
if($rows>0) {
echo "<script>alert('用户名已经有人注册了,重新注册一个吧')</script>";
echo "<script>window.location='index.html'</script>";
}
else {
echo "用户名可用\n";
//设置客户端和连接字符集
mysqli_query($conn,"set names utf8"); //通过php进行insert操作
$sqlinsert="insert into t1(username,password,email) values('{$name}','{$pwd}','{$email}')"; //返回用户信息字符集
$result=mysqli_query($conn,$sqlinsert);
if(! $result )
{
die('Could not enter data: ' . mysql_error());
}
echo "恭喜你注册成功\n"; //释放连接资源
mysqli_close($conn);
} } ?>
数据库名为zhuce,表名为t1,以后详细讲。

用php怎么写一个用户注册登录的页面呢?的更多相关文章

  1. 使用form 组件写一个用户注册,并用 bootstrap渲染

    需求:使用form组件,写一个用户注册系统,包含用户名, 密码, 确认密码,手机号,性别,爱好,注册.并用bootsrap渲染,成果如下: 首先创建一个django 项目.然后在连接pymysql数据 ...

  2. Java Web 开发利用Struts2+Spring+mybatis写一个用户登录界面以及简单的数据交互

    框架的东西太复杂也难以讲通,直接上代码: 一.首先得配置环境 和导入必要的jar包 有一些重要的如下: Filter文件夹下的SafetyFilter.java   model文件夹下的 Global ...

  3. Extjs6(二)——用extjs6.0写一个系统登录及注销

    本文基于ext-6.0.0 一.写login页 1.在view文件夹中创建login文件夹,在login中创建文件login.js和loginController.js(login.js放在class ...

  4. Vue.js写一个SPA登录页面的过程

    技术栈 vue.js 主框架 vuex 状态管理 vue-router 路由管理 一般过程 在一般的登录过程中,一种前端方案是: 检查状态:进入页面时或者路由变化时检查是否有登录状态(保存在cooki ...

  5. Spring Security 实战干货:从零手写一个验证码登录

    1. 前言 前面关于Spring Security写了两篇文章,一篇是介绍UsernamePasswordAuthenticationFilter,另一篇是介绍 AuthenticationManag ...

  6. 【Filter 页面重定向循环】写一个过滤器造成的页面重定向循环的问题

    今天做一个过滤器,碰上页面重定向循环的情况: 浏览器的访问路径是:http://192.168.16.104:8080/biologyInfo/login/login/login/login/logi ...

  7. HTML基础:用表单写一个简易登录页面

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. Layui 写一个简单的后台页面

    参考如下: 1.layui 官方文档 http://www.layui.com/doc/ 2.https://blog.csdn.net/huyanliang/article/details/7796 ...

  9. Django实现用户注册登录

    学习Django中:试着着写一个用户注册登录系统,开始搞事情 =====O(∩_∩)O哈哈~===== ================= Ubuntu python 2.7.12 Django 1. ...

随机推荐

  1. 设计模式之美:Dynamic Property(动态属性)

    索引 别名 意图 结构 参与者 适用性 效果 实现 实现方式(一):Dynamic Property 的示例实现. 别名 Property Properties Property List 意图 使对 ...

  2. 我YY的一个移动应用运营模式

    尽管自己也还是刚刚毕业不久的前端新人,但网上也不乏一些案例告诉我们有志不在年高,很多优秀的同龄人已经有了不错的成就,所以在切页面写onclick之余也在进行一些思考,前端程序员的出路到底在哪里? 一. ...

  3. Java多线程系列--“JUC锁”05之 非公平锁

    概要 前面两章分析了"公平锁的获取和释放机制",这一章开始对“非公平锁”的获取锁/释放锁的过程进行分析.内容包括:参考代码获取非公平锁(基于JDK1.7.0_40)释放非公平锁(基 ...

  4. 使用protractor操作页面元素

    Protractor是为Angular JS应用量身打造的端到端测试框架.它可以真实的驱动浏览器,自动完成对web应用的测试.Protractor驱动浏览器使用的是WebDriver标准,所以使用起来 ...

  5. Homebrew简介及安装

    Homebrew官网 http://brew.sh/index_zh-cn.html Homebrew是神马 linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案, ...

  6. Node.js入门:文件查找机制

    文件查找流程图 从文件模块缓存中加载     尽管原生模块与文件模块的优先级不同,但是都不会优先于从文件模块的缓存中加载已经存在的模块. 从原生模块加载     原生模块的优先级仅次于文件模块缓存的优 ...

  7. [源码解析]HashMap和HashTable的区别(源码分析解读)

    前言: 又是一个大好的周末, 可惜今天起来有点晚, 扒开HashMap和HashTable, 看看他们到底有什么区别吧. 先来一段比较拗口的定义: Hashtable 的实例有两个参数影响其性能:初始 ...

  8. Visual Studio 2015 Bowser Link的功能不停的向服务端发送请求

    Visual Studio 2015新建的mvc项目 默认在每个视图上生成一些JavaScript脚本

  9. LinkedHashMap源码详解

    序言 本来是不打算先讲map的,但是随着对set集合的认识,发现如果不先搞懂各种map,是无法理解set的.因为set集合很多的底层就是用map来存储的.比如HashSet就是用HashMap,Lin ...

  10. SSIS的DelayValidation属性

    一,DelayValidation Property true if validation of the package is delayed until run time. false if the ...