新人做一个表单编辑功能的实现,遇到瓶颈求帮助
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了新人做一个表单编辑功能的实现,遇到瓶颈求帮助,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含11094字,纯文字阅读大概需要16分钟。
内容图文
![新人做一个表单编辑功能的实现,遇到瓶颈求帮助](/upload/InfoBanner/zyjiaocheng/204/2002d69d9e244f75bf9cfaf2b4fa3220.jpg)
Edit
以上是代码,只能成功修改最后一行,原因是我用while读取后Post选择的总是最后一行,想了有段时间了想不出怎么做
求指导,最好有代码,js可以看懂一点,Jquery咱不会使,毕竟php和js还没完全搞明白
回复讨论(解决方案)
顺带一提,这个页面的前一个页面没有传任何值出来,没有session。
这个页面表单打印全是直接从数据库调的
没人吗
你post的应该只有最后一个记录
input 的name属性名一样,取最后一个
你post的应该只有最后一个记录
这个我知道了,我想求个解决思路或者具体代码来实现我的目的
你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值
你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值
input 的name属性名一样,取最后一个
我是用id调的数据,问题在三个column的name都是一样的,只有value不一样,怎么才能把他们分开分别调用
你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值
这个思路好!我试试
你每个表单的name得不同,不然只能获取到$_POST[‘objname’]和$_POST['objinfo']两个post值
这么一改怎么用post提数据啊?
$objname=$_POST["objname"];怎么写
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
Edit
我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
这个数组思路好,赞一个,这样post取值的通过遍历数组就可以区分不同的name:_POST['objname[0],学习了,我想法是通过js修改name值,有点蛋疼!
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
Edit
我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )
$_POST["objname[i]"];这个是不是有问题。
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
Edit
我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )
$_POST["objname[i]"];这个是不是有问题。
改成$i了还是不行,有引号方面的问题吗?
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
Edit
我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )
$_POST["objname[i]"];这个是不是有问题。
改成$i了还是不行,有引号方面的问题吗?
这样想好像不是很好,现在不是可以获得post过来的3个数组了吗,你根据3个数组再组合下,分别插入数据库,不要想着把$_POST[["objname[i]"]插入数据库,而是把$data=array();$data=$_POST["objname"],然后在分别把3个新定义的数组插入数据库。
if(!empty($_POST)){ while($row=mysql_fetch_array($result)) { $objname=$_POST["objname[]"]; print_r($_POST["objname[]"]); print_r($objname); $objinfo=$_POST["objinfo[]"]; $id = $_POST["id[]"]; $strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'"; $result2=mysql_query($strSql,$myconn); if(!$result2){ die(mysql_error()); } } echo"修改成功!"; }
想了一下,是不是不用$i也行,但是还是取不出post里数组的数据(感觉是个基础问题)
有劳大佬了
你还要能分条保存啊?那分数组。
这样,获得三个数组。之后你想直接插还是整合成一个数组再插都行
Edit
我按照你的思路改成这样了
post获得的是一整个表单,我让他逐条更新写入,但是为啥数据库那边没改啊
post获得的值打在这里:Array ( [id] => Array ( [0] => 7 [1] => 8 [2] => 9 [3] => 10 ) [objname] => Array ( [0] => 123123 [1] => 321 [2] => 456 [3] => 654 ) [objinfo] => Array ( [0] => 132132 [1] => 321 [2] => 456 [3] => 654 ) )
找了半天,你这执行的是$sqlstr,但定义的字符串是$sqlstr2
title | link |
|
我本地测试了一下,这样是可以用的,以上是table里的代码
if(!empty($_POST)){ while($row=mysql_fetch_array($result)) { $objname=$_POST["objname[]"]; print_r($_POST["objname[]"]); print_r($objname); $objinfo=$_POST["objinfo[]"]; $id = $_POST["id[]"]; $strSql2="update table_test set objname='$objname',objinfo='$objinfo' where objid='$id'"; $result2=mysql_query($strSql,$myconn); if(!$result2){ die(mysql_error()); } } echo"修改成功!"; }
想了一下,是不是不用$i也行,但是还是取不出post里数组的数据(感觉是个基础问题)
有劳大佬了
我写了print_r($_POST["$objname"]);和print_r($_POST["$objname[]"]); 都没反应
$objname=array();
$bojname=$_POST['bojname'];
$objinfo=array();
$bojname=$_POST['bojname'];
$id=array();
$id=$_POST['id'];
for ($i=0,i<count($id);$i++){
$sql='update table_test set objname='.$objname[$i].',objinfo='.$objinfo[$i].' where objid='.$id[$i];
}
试试这个思路
用 $objname=$_POST["objname"][$i]; 吧。
title | link |
|
我本地测试了一下,这样是可以用的,以上是table里的代码
原来是这样写的,受教了
用 $objname=$_POST["objname"][$i]; 吧。
一下子没想到这个,$_POST["objname"][$i]这样的得到post的值,应该就可以插入了,问题应该可以解决了。
用 $objname=$_POST["objname"][$i]; 吧。
多谢大佬帮助,基本上问题都解决了,还差一个定循环里i的终止值为表单长度,这个我自己来吧
真是太感谢了!
用 $objname=$_POST["objname"][$i]; 吧。
也多些这位仁兄的热心帮助!太感动了
Edit
这里是最终成型代码
感谢fedcgfedbe和csjazqx的热心帮助!
用 $objname=$_POST["objname"][$i]; 吧。
多谢大佬帮助,基本上问题都解决了,还差一个定循环里i的终止值为表单长度,这个我自己来吧
真是太感谢了!
咱不是大佬。。做这行也没多久的。只是在帮助别人的时候自己也能温习。
内容总结
以上是互联网集市为您收集整理的新人做一个表单编辑功能的实现,遇到瓶颈求帮助全部内容,希望文章能够帮你解决新人做一个表单编辑功能的实现,遇到瓶颈求帮助所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。