数码资讯
PHP如何保留表单提交后填充的信息
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
本文介绍了PHP提交表单失败时总结信息的几种方法,最常用的方法是使用缓存。如果这个方法很慢,可能是个问题。最好的方法是使用ajax。
1。使用头标头设置缓存控制头缓存控制。
PHP代码如下所示:
头('cache-control:私人,must-revalidate); / /支持页大小
2。使用session_cache_limiter方法。
PHP代码如下所示:
session_cache_limiter(担保的非盈利,must-revalidate); / /写在session_start方法
以下是session_cache_limiter参数:
在session_cache_limiter几个参数的含义:
使用:当然,它不缓存(例如:表格信息被清除),但公共变量可以被缓存
私有:私有缓存(例如:表单信息被保留,但在生命周期内有效)
private_no_cache:私人的方式但不过期(表格信息保留)
公众:公众的方式,(形式的信息也保存)
设置缓存过期时间:session_cache_expire的功能设置,默认是180分钟。
经常遇到的问题:
1.session_cache_limiter(私);形式的信息被保留,但如果我不得不修改提交的信息,网页形式展示信息或缓存信息,不能自动刷新的时间,如果不session_cache_limiter(私);不能保持形式的信息
解uff1a
在前面加上session_start
session_cache_limiter(私人,must-revalidate);
你可以.
2。另一种方法,我们可以使用Ajax作为示例
html模板文件大致如下:
ajax演示示例
$(document)。Ready(功能){ / /(这是jqueryready,就像C语言包含所有主要操作在它
$(# button_login)。Mousedown(function(){)
登录(ID); / /点击button_login 按钮来触发功能登录();
});
函数(登录){函数登录();
用户名= $(var#用户名)(。Val); / /得到用户名框
密码= $(var#密码)(。Val); / /箱中得到密码
(ajax过程)
类型:POST通信和后台模式。
与此PHP页面通信
DataType:'json ' / /返回PHP JSON模式价值
数据:'username =+用户名+ 'password =+密码 / / PHP数据,分别从上述U和P
成功:如果成功调用PHP,函数(JSON)
/ /警报(JSON。用户名+ n + JSON。密码); / / PHP的返回值(JSON。用户名)提醒。
$(#结果)。Html(的名字:json.username密码:+ JSON。密码); / /返回值在预定位置的PHP符号位置结果显示
}
});
}
()模式:
$(# test_post)。Mousedown(function(){)
美元(邮政)
登录,
{
用户名:$(' #用户名)瓦迩(),
密码:$(' #密码)的瓦迩()。
},
函数(数据)返回函数
{
无功myjson =;
eval_r('myjson = +数据+ ';');
$(#结果)。Html(名称1:+ myjson.username +密码1:+ myjson。密码);
}
);
});
()()模式:
$(# test_get)。Mousedown(function(){)
(美元)
登录,
{
用户名:$(' #用户名)瓦迩(),
密码:$(' #密码)的瓦迩()。
},
函数(数据)返回函数
{
无功myjson =;
eval_r(myjson =+数据+;);
$(#结果)。Html(名称2:+ myjson.username +密码2:+ myjson。密码);
}
);
});
});
输入名称:
输入密码:
Ajax提交
后提交
得到的提交
该login.php文件内容如下:
< PHP
回声json_encode(阵列('username= > _request美元{ 'username},'password= > _request美元{ 'password ' }));
>
这样,我们在提交时不需要刷新页面,如果失败,它将直接提交,这样可以保存100%,并且在提交失败后数据不会丢失。
1。使用头标头设置缓存控制头缓存控制。
PHP代码如下所示:
头('cache-control:私人,must-revalidate); / /支持页大小
2。使用session_cache_limiter方法。
PHP代码如下所示:
session_cache_limiter(担保的非盈利,must-revalidate); / /写在session_start方法
以下是session_cache_limiter参数:
在session_cache_limiter几个参数的含义:
使用:当然,它不缓存(例如:表格信息被清除),但公共变量可以被缓存
私有:私有缓存(例如:表单信息被保留,但在生命周期内有效)
private_no_cache:私人的方式但不过期(表格信息保留)
公众:公众的方式,(形式的信息也保存)
设置缓存过期时间:session_cache_expire的功能设置,默认是180分钟。
经常遇到的问题:
1.session_cache_limiter(私);形式的信息被保留,但如果我不得不修改提交的信息,网页形式展示信息或缓存信息,不能自动刷新的时间,如果不session_cache_limiter(私);不能保持形式的信息
解uff1a
在前面加上session_start
session_cache_limiter(私人,must-revalidate);
你可以.
2。另一种方法,我们可以使用Ajax作为示例
html模板文件大致如下:
ajax演示示例
$(document)。Ready(功能){ / /(这是jqueryready,就像C语言包含所有主要操作在它
$(# button_login)。Mousedown(function(){)
登录(ID); / /点击button_login 按钮来触发功能登录();
});
函数(登录){函数登录();
用户名= $(var#用户名)(。Val); / /得到用户名框
密码= $(var#密码)(。Val); / /箱中得到密码
(ajax过程)
类型:POST通信和后台模式。
与此PHP页面通信
DataType:'json ' / /返回PHP JSON模式价值
数据:'username =+用户名+ 'password =+密码 / / PHP数据,分别从上述U和P
成功:如果成功调用PHP,函数(JSON)
/ /警报(JSON。用户名+ n + JSON。密码); / / PHP的返回值(JSON。用户名)提醒。
$(#结果)。Html(的名字:json.username密码:+ JSON。密码); / /返回值在预定位置的PHP符号位置结果显示
}
});
}
()模式:
$(# test_post)。Mousedown(function(){)
美元(邮政)
登录,
{
用户名:$(' #用户名)瓦迩(),
密码:$(' #密码)的瓦迩()。
},
函数(数据)返回函数
{
无功myjson =;
eval_r('myjson = +数据+ ';');
$(#结果)。Html(名称1:+ myjson.username +密码1:+ myjson。密码);
}
);
});
()()模式:
$(# test_get)。Mousedown(function(){)
(美元)
登录,
{
用户名:$(' #用户名)瓦迩(),
密码:$(' #密码)的瓦迩()。
},
函数(数据)返回函数
{
无功myjson =;
eval_r(myjson =+数据+;);
$(#结果)。Html(名称2:+ myjson.username +密码2:+ myjson。密码);
}
);
});
});
输入名称:
输入密码:
Ajax提交
后提交
得到的提交
该login.php文件内容如下:
< PHP
回声json_encode(阵列('username= > _request美元{ 'username},'password= > _request美元{ 'password ' }));
>
这样,我们在提交时不需要刷新页面,如果失败,它将直接提交,这样可以保存100%,并且在提交失败后数据不会丢失。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。