form 多个submit php,一个复杂的PHP表单处理方案?
JS 实现BASE64_ENCODE 和 BASE64_DECODE
/* utf.js - UTF-8 <=> UTF-16 convertion
*
* Copyright (C) 1999 Masanao Izumo
* Version: 1.0
* LastModified: Dec 25 1999
* This library is free. You can redistribute it and/or modify it.
*/
/*
* Interfaces:
* utf8 = utf16to8(utf16);
* utf16 = utf16to8(utf8);
*/
function utf16to8(str) {
var out, i, len, c;
out = "";
len = str.length;
for(i = 0; i < len; i++) {
c = str.charCodeAt(i);
if ((c >= 0x0001) && (c <= 0x007F)) {
out += str.charAt(i);
} else if (c > 0x07FF) {
out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
} else {
out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
}
}
return out;
}
function utf8to16(str) {
var out, i, len, c;
var char2, char3;
out = "";
len = str.length;
i = 0;
while(i < len) {
c = str.charCodeAt(i++);
switch(c >> 4)
{
case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
// 0xxxxxxx
out += str.charAt(i-1);
break;
case 12: case 13:
// 110x xxxx 10xx xxxx
char2 = str.charCodeAt(i++);
out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
break;
case 14:
// 1110 xxxx 10xx xxxx 10xx xxxx
char2 = str.charCodeAt(i++);
char3 = str.charCodeAt(i++);
out += String.fromCharCode(((c & 0x0F) << 12) |
((char2 & 0x3F) << 6) |
((char3 & 0x3F) << 0));
break;
}
}
return out;
}
/* Copyright (C) 1999 Masanao Izumo
* Version: 1.0
* LastModified: Dec 25 1999
* This library is free. You can redistribute it and/or modify it.
*/
/*
* Interfaces:
* b64 = base64encode(data);
* data = base64decode(b64);
*/
var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var base64DecodeChars = new Array(
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63,
52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1,
-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1,
-1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1);
function base64encode(str) {
var out, i, len;
var c1, c2, c3;
len = str.length;
i = 0;
out = "";
while(i < len) {
c1 = str.charCodeAt(i++) & 0xff;
if(i == len)
{
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt((c1 & 0x3) << 4);
out += "==";
break;
}
c2 = str.charCodeAt(i++);
if(i == len)
{
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
out += base64EncodeChars.charAt((c2 & 0xF) << 2);
out += "=";
break;
}
c3 = str.charCodeAt(i++);
out += base64EncodeChars.charAt(c1 >> 2);
out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6));
out += base64EncodeChars.charAt(c3 & 0x3F);
}
return out;
}
function base64decode(str) {
var c1, c2, c3, c4;
var i, len, out;
len = str.length;
i = 0;
out = "";
while(i < len) {
/* c1 */
do {
c1 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
} while(i < len && c1 == -1);
if(c1 == -1)
break;
/* c2 */
do {
c2 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
} while(i < len && c2 == -1);
if(c2 == -1)
break;
out += String.fromCharCode((c1 << 2) | ((c2 & 0x30) >> 4));
/* c3 */
do {
c3 = str.charCodeAt(i++) & 0xff;
if(c3 == 61)
return out;
c3 = base64DecodeChars[c3];
} while(i < len && c3 == -1);
if(c3 == -1)
break;
out += String.fromCharCode(((c2 & 0XF) << 4) | ((c3 & 0x3C) >> 2));
/* c4 */
do {
c4 = str.charCodeAt(i++) & 0xff;
if(c4 == 61)
return out;
c4 = base64DecodeChars[c4];
} while(i < len && c4 == -1);
if(c4 == -1)
break;
out += String.fromCharCode(((c3 & 0x03) << 6) | c4);
}
return out;
}
//input base64 encode
function strdecode(str){
return utf8to16(base64decode(str));
}
document.write(strdecode('5L2g5aW9Iee+juWlsyE='));
首先直接做成一页,中间步骤的数据处理用JS,然后就可以正常提交,交给原系统的注册处理页面
form 多个submit php,一个复杂的PHP表单处理方案?相关推荐
- 使用php创建一个注册表单,如何实现一个简单的注册表单
创建一个注册表单是非常容易的 - 它事实上意味着,你只需要创建一个表单,表单将更新一些User的模型对象(这个例子是一个Doctrine实体)并保存它. 受欢迎的FOSUserBundle 提供了一个 ...
- 用javascript写一个简单的登录表单,包含用户名、密码和手机号码。提交数据时验证用户名、密码和手机号输入格式。
题目:写一个用于登录的表单,包含用户名.密码和手机号码.提交数据的时候,要求验证: 1. 用户名必须输入汉字: 2. 密码总共6位,前2位为字母,后4位为数字: 3. 手机号码符合中国大陆手机号码格式 ...
- 让一个网页打开的同时自动为另一个网页自动填写表单并提交
让一个网页打开的同时自动为另一个网页自动填写表单并提交 if you use "window.open" to open the window,you can ...
- 运用php制作一个表单,PHP 表单处理,一个简单的 HTML 表单
PHP 超全局变量 $_GET 和 $_POST 用于收集表单数据(form-data). PHP - 一个简单的 HTML 表单,我们在平时运用PHP这门语言的时候,最频繁的是就是表单提交了.如:用 ...
- django一个html先后两个form,django 一个页面两个表单 怎么提交
收到一只叮咚 1234567891011121314151617181920212223242526272829办法1.同一个页面中建立两个表单 各自提交: 1234567812345678办法2:如 ...
- django中如何优雅的处理一个多按钮的表单
1. 一个表单多个按钮 OA MATSUI 的问题: 如过一个html表单,包含一个书的列表信息,有两个按钮, 一个是添加,一个是修改,实现不同的功能,代码如下. <form actio ...
- 用php实现一个简易的web表单生成器,PHP—Web表单生成器
1.实例: 2. 需求分析 在项目的实际开发中,经常需要设计各种各样表单.直接编写HTML表单虽然简单,但修改.维护相对麻烦. 因此,可以利用PHP实现一个Web表单生成器,使其可以根据具体的需求定制 ...
- Asp.net中一个页面多个表单的解决方案
<form id="form1" runat="server"> <input name="TrueName" type= ...
- form提交后台注解拿不到数据_Form表单详解
主要内容Form表单.表单元素.表单元素的属性.HTML5新增type类型和HTML新增属性 知乎视频www.zhihu.com 知乎视频www.zhihu.com 知乎视频www.zhihu. ...
最新文章
- Windows Server 2003安装卡巴斯基2010成功
- 【图】2015年Google搜索引擎排名算法(完整版)
- 清华大学计算机专业学生埃朗读村,《朗读者~矣晓沅(清华大学计算机研究生 彝族)》...
- linux如何分析系统的堆栈,Linux内核分析:操作系统是如何工作的?
- 分度值1g是什么意思_都什么年代了,还有人在 MySQL 索引上碰一鼻子灰?
- 【No.7 C++对象的构造与析构时间】
- HAproxy编译安装
- 编写JQuery插件-2
- 03-mysql的相关命令-启动与关闭服务-配置环境变量
- HTML与XHTML区别
- Pytorch相关函数详解
- Python 柱状图 横坐标 名字_Python气象绘图教程(四)
- 数独游戏,随机生成只有唯一解的数独表
- java鼠标点击按钮_Java 模拟鼠标事件 java中控制鼠标点击的方法
- Android 开发工具一键下载
- 无法在计算机上读取移动硬盘,解决苹果电脑不能读写移动硬盘
- doc创建php文件,PHP读取创建txt,doc,xls,pdf类型文件
- Spring Cloud Hystrix 全解 (1) - 总览篇
- GB2312和BIG5,Unicode/UTF8等编码之间的互相转化
- 【OpenCV 例程300篇】214. 绘制椭圆的参数详解