页面|用户注册
当程序员的人应该都去过论坛,都在应该注册过论坛的用户吧.论坛上用户注册的步骤分为几部:
第一步 \ 协议页面, 只有同意这个协议才可以进入下一步注册
第二步 \ 表单输入页面, 输入用户的注册信息
第三步 \ 注册结果页面,提示注册成功
在实际工作中,如果我们要开发实现这种注册页面,要注意很多的问题:
1\用户跳过"第一步",没有阅读协议页面,直接通过第二步的url直接访问表单输入页面.
2\用户在完成"第三步"的时候,不停的刷新页面,这个用户输入的信息就在每刷新一次的时候被重新保存一次
3\用户在完成"第三步"的时候,点击后退,修改某个信息后,再次提交.
类似这种得表单在web开发的过程中会经常碰到, 对于第3点, 几乎目前所有的论坛中都有这个问题存在,;第2点在一些留言板中经常遇到, 但是怎么作才可以避免上述的问题呢?
今天老板让我帮别人做个文件上传的东西, 允许任何人来上传符合要求文件, 页面模板已经设计好了, 就是和用户注册的步骤是一样的, 分三步骤. 以前做过类似的东西, 但是防刷新机制设计的不是很好. 反正今天没事做, 就稍微研究一下, 看看如何实现代码可以避免上述的问题.
-----------------------------------------------
-----------------------------------------------
下面是个人设计的实现代码,可以避免上述的问题. 通过浏览器访问register.php,在输入"用户名"和"地址"的时候, 两个都不能为空,为空的时候,会提示错误信息; 当两个输入框都不为空的时候, 可以提交成功,提交成功以后,你再进行刷新和后退,看看是不是达到了效果了.
文件一: config.inc.php
//开始session
session_start();
//设置不进行本地缓存
header('Expires: '.date('D,d M Y H:i:s',mktime(0,0,0,1,1,2000)).' GMT');
header('Last-Modified:'.gmdate('D,d M Y H:i:s').' GMT');
header('Cache-control: private, no-cache,must-revalidate');
header('Pragma: no-cache');
?>
文件二: register.php
require_once "config.inc.php";
if(isset($_SESSION[step2]) && isset($_POST[step2])) {
//注册的最后一步
$errorStr = formStep3();
if($errorStr!=null){
require_once('step2.html');
}else{
require_once('step3.html');
unset($_SESSION[step2], $_SESSION[step1]);
}
} else if(isset($_SESSION[step1]) && isset($_GET[step1])) {
//注册的第二步
require_once('step2.html');
$_SESSION[step2] = 1;
} else {
//注册的第一步
require_once('step1.html');
$_SESSION[step1] = 1;
}
//判断用户提交的表单的数据的 准确性 和 保存提交数据 的函数
function formStep3(){
$errors = array();
$errorStr = null;
if(strlen($_POST[username]) if(strlen($_POST[address])
if(sizeof($errors)>0){
$errorStr .= "
";
$errorStr .= "信息输入错误:";
foreach($errors as $error)
$errorStr .= "
$errorStr .= "
";
}else{
//用来保存用户输入的信息到数据库或其他地方
//这个保存的过程就略了
}
return $errorStr;
}
?>
模板文件一: step1.html
步骤一 阅读《章程》
模板文件二: step2.html
步骤二 提交登记表
模板文件三: step3.html
步骤三 提交成功

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음
