C#交流俱乐部

学习为主,互相帮助

博客园 首页 新随笔 联系 订阅 管理

现在开始使用php进行正式开发

 

谈正体:

 在php上,对数据进行写入库,读出库及呈现到页面上都很方便。但是提交数据一般都是使用post方式,这就有个问题了,对于页面数据及控件多,

比如:

<input name="data" id="test1" value="测试1">  id对应表t的列  test1

<input name="data" id="test2" value="测试2">   id对应表t的列 test2

 <input name="data" id="test3" value="测试3">  id对应表t的列 test3

对于页面上有很多这类数据,提交过去,取的内容的话php 使用$_POST[“data”]  取道的只是key 及对应的value ,我们无法判断对应key 和value应当对应哪个列名

 但是如果使用 <input name="data['test3']" id="test3" value="测试3">

这样写的话,把列名当成key来写,是可以很容易获取到对应的列名信息。

由于页面上有对数据验证之类的处理,对于js取控件使用下面方法:

document.getElementsByName("data");

这 又是个问题,当然使用jquary等,或者其他通过tag来取都是很方便的,这些这里不考虑

 

 

对应在项目中,如果我 id使用表列来命名,这样对于当前页name="data" 的控件刚好构成对应表中的一行数据,而在php中刚好列名也是id名,这样写传数据就不用再去构造数组,直接真个数组提交到库就行了,省了很多步骤。

依此,我可以n层次提交n个表及m行类数据都很容易在页面上一次提交了

 

为了实现建立post传过来的是一个数组  array('test1=>'=’aaa'>','test2=>'='2');这样一个数组,我在提交之前用有个步骤是js对数据进行检测,比如格式是否正确只类的,如果一切都ok我就把数据拼成一个自己想要格式的数组,然后转成json字符串,存到某个hiddin控件中,post提交。而php的页只需要接收,对转移符"\"调用stripslashes处理下,然后使用json_decode函数就很容易还原成原有格式的数组。

 

这样对于js和php之间的数据交互就显得特别容易了

网络上有片js json和php串行化 交互数据的文章,我参考很多都是从这来的

原文地址:http://hi.baidu.com/lostdays/blog/item/8d76c300ec4e3c15738b65fa.html

 

 

 

 


 

posted on 2010-04-08 20:25  bluce chen  阅读(681)  评论(0编辑  收藏  举报