PHP编程,请问多次提交表单后如何保存数据,不用数据库或文本保存数据

如图,在文本框输入Peter,点save后,输入Linda,再点output,最后结果显示如下图

不用数据库或文本保存数据,求教详细做法
求数组、session的具体做法

第1个回答  2013-10-17
可能你思路不清   不怪你
这个用得着要用到session 数组等么?
你如果要用到session 意思着 你表单要作提交.
提交就有两种方式  一直种正常提交 这样一般会离一页面.操作起来一点都不友好
第二种 是用AJAX提交 但太麻烦了.

其它这等小事  直接用JS去完成就可以了
在表单中定义一个<input type="hidden" value="">
这样不就提供一个可以保存数据的东西了吗?
你用js去担作不就完事了吗?当点save时候 用JS取值 把值给hidden.
简单 易懂 易操作
高端 大气 上档次追问

你好,我是需要提交表单,所以想拿这条问题问问session的如何接受并保存表单post过来的数据,谢谢

追答

汗 如果你用session 那你还问什么?直接提交表单,session(key)=xxx 保存下来不就完事了吗

追问

但是我每次点击submit后数据都会被清空,保存不了

追答

session是不会被清空的 它有生存周期的

追问

我想问下我的代码哪里出问题,是没有设session的生命周期吗

追答

session_destroy() 这个不是销毁么?难道你不知?一般如果不设置 session的生命周期就是你浏览器与服务器连接 关闭就死亡  设置了 就根据设置的生命周期.如果出现session_destroy 直接销毁内容.但保持你的session_id

 

还有 百度支持PHP代码的 不要这样写代码 很难看

第2个回答  推荐于2016-04-05
<form action="<?php echo end(explode("/",$_SERVER['REQUEST_URI']))?>" method="post">
 <input type="text" name="text1" id="text1"/>
 <input type="button" value="save" onclick="javascript:save();" />
 <input type="button" value="output" onclick="javascript:output();" />
</form>
<div id="content">
</div>
<script type="text/javascript">
$=function (id) { return (typeof (id)=='object')?id:document.getElementById(id); };
var str="";
function save(){
 str+=$('text1').value;
 $('text1').value="";
}
function output(){
 $("content").innerHTML=str;
}
</script>

追问

希望可以不用js解决问题

追答 <?php
$s=$str="";
if($_POST){
 $s=$_POST["str"].$_POST["text1"];
 if(isset($_POST["output"])){
  $str=$s;
 }
}
?>
<form action="<?php echo end(explode("/",$_SERVER['REQUEST_URI']))?>" method="post">
 <input type="hidden" value="<?php echo $s?>" name="str">
 <input type="text" name="text1" id="text1"/>
 <input type="submit" value="save" name="save" />
 <input type="submit" value="output" name="output" />
</form>
<div><?php echo $str?></div>

追问

我想再问一下如果加多一个文本框text2,上面的代码应该怎么修改

本回答被提问者采纳
第3个回答  2013-10-17
首先引入Jquery类

<input type="text" name="sss" id="sss">
<input type="submit" value="save" id="aa">

<div id="content"></div>
<script>
var ss=document.getElementById('sss').value;

$("#aa").click(function(){
$("#content").append(ss);
})
</script>
不明白可以追问哦追问

希望可以不用js解决问题

第4个回答  2013-10-17
数组应该是不适合吧,脚本执行后,数组就消失了。
session_start();
$_SESSION[keyname]=array();
$_SESSION[keyname][]=$_POST['inputname'];
这样就可以随时引用这个值了
在你的html的页面上想要输出的位置
<?php
echo $_session[keyname][0].$_session[keyname][1] //多的话可以改成循环输出
?>追问

我每次点击submit后数据都会被清空,保存不了,求具体代码

追答

你不要session_destroy() 销毁了就什么都没了

追问

我没有调用session_destroy(),但是数据还是保存不了。。

追答

加我Q啦,一会就关了这个了,1195115 我也是挺新个菜鸟,但貌似还能冒充下先生。

第5个回答  2013-10-17
<?php 
session_start();
$_SESSION['name'] = isset($_POST['nname']) ? $_POST['nname']:"";
echo $_SESSION['name'];
echo "Success to save value"

?>

PHP编程,请问多次提交表单后如何保存数据,不用数据库或文本保存数据
数组应该是不适合吧,脚本执行后,数组就消失了。session_start();_SESSION[keyname]=array();_SESSION[keyname][]=$_POST['inputname'];这样就可以随时引用这个值了 在你的html的页面上想要输出的位置 <?php echo $_session[keyname][0].$_session[keyname][1] \/\/多的话可以改成循环输出 ...

php 提交表单返回页面后如何保留表单中的数据
你可以把数据存储到session 或 cookie中在返回啊 这样在返回后的页面读取出来就OK拉。

用HTML PHP提交表单 如何不用数据库存储并查看数据
将表单内容以post方式传递到服务器上找个地方,用时间戳来命名文件,以.txt文件存储,定义自己需要的格式,就行啦,要查看数据的时候,直接遍历读取文件就可以查看了

如果不用数据库,拿什么存放数据
可以考虑用文件存储数据 但是不能写SQL了 。或者用MS access 做数据库 这个东西 就类似文件 但是基本的数据库功能都有的 表啊 视图都有的 也能实用 SQL 语句 就是不能写复杂的函数啊 过程 触发器这样的东西。

PHP下如何实现刷新后,已填的表单数据仍然存在呢?
如果需要这样的话可以考虑cookie技术。首先你要在表单没一个空填好之后执行一段js代码 这段js代码主要的功能是这样的:先用js查看相应的cookie值有没有存在,如果存在则写到相应的表单中,如果不存在则写入,每次执行该页面都去检查一下cookie 简而言之,此处就是用到了js对cookie操作的技术。

php页面提交失败如何放回php页面提交失败如何放回桌面
php提交表单,在错误弹出框中点击OK按钮后,跳转回原始页面。如何保存原始信息?可以将收到的数据返回,填写表格。这里有一个网友的解决方案,贴出如下:在开发过程中,经常会出现表格错误返回页面时填写的信息丢失的情况。为了支持页面跳回,可以通过以下两种方法实现。1.使用header设置缓存控制标题Cache-...

...3次表单,多于3次则5分后才能再次提交,不用数据库
'time'] = time();_SESSION['sub_num'] = 0;sta = 1;} }else{ _SESSION['time'] = time();_SESSION['sub_num'] = 0;sta = 1;} if($sta){ _SESSION['sub_num'] = $_SESSION['sub_num'] + 1;\/\/可以提交 }else{ \/\/不可以提交 } 大致就这么个意思 自己看着改吧 ...

求,一个php网页登陆代码,不用数据库的
最简单也是最笨的就是写入文件变量,或者动态写入文本就可以了,如果是多用户可以每个用户一个文件,通过一定规则的hash分目录存储,或者也可以自己做一个轻量级的文本数据表引擎

php接收表单数据存储数组,并按格式输出
可以先接收到值。然后组装成 123,456,789 这样的字符串存入数据库 然后读取数据库的时候,用explode() 把他转为数组,在循环输出就可以了 url1 = $_POST('url1');url2 = $_POST('url2');url3 = $_POST('url3');组装数据 str = $url1.",".$url2.",";然后将$str 存入数据库 然...

表单提交到一个页面,如何保存原来表单的值
可以用history.go(-1)或history.back(1)但这样的话,输入的密码和文件域也不能恢复,建议用javascript在客户端写一个验证函数,在提交(submit)的时候触发验证。然后在服务器端进一步验证,以防有人投机取巧。

相似回答