当前位置:Gxlcms > PHP教程 > php表单提交更新数据库表的内容,只改变当前行

php表单提交更新数据库表的内容,只改变当前行

时间:2021-07-01 10:21:17 帮助过:13人阅读

这个属性字段下的内容,我用select给了几个值,怎么选择那个值提交到数据库并更新数据库中表的内容,只改变当前行


回复讨论(解决方案)

传递唯一识别标志

提交修改数据库当前行的内容

修改数据库的时候根据提交的 id 来操作更新,

传递唯一识别标志



怎样获取那个唯一标识?js不太会,能写个简单例子吗?

提交修改数据库当前行的内容

修改数据库的时候根据提交的 id 来操作更新,



知道是那样,但是怎样获取那个id,我就是不会这块

唯一识别标志是你给的!
假定你示例的数据中,QQ号是不重复的,那么QQ号就可以做唯一识别标志

唯一识别标志是你给的!
假定你示例的数据中,QQ号是不重复的,那么QQ号就可以做唯一识别标志



我知道唯一标识的意思,我是说,我怎么去获取那个值,是要写js吗?还是表单就能获取?

你可在表单里用 checkbox 传值

你可在表单里用 checkbox 传值



能写个逻辑或者敲几行代码吗?我是真的很菜的菜鸟,你只说我是不太会用的

就是在数据库结构中添加一个类似id的字段,这个里边的应该是自动生成的id值,就是你每次创建一条数据就会生成一个唯一的id值,然后用这个id进行传值取值,比如说在update的时候条件要写where id = 1或者几

然后在操作界面的时候要给你的操作的地方一个id或者name值,就是唯一标识,这样的话你的js代码处也应该有一个id值或者name值和它相同,js写的方法就是调用或者操作数据库的东西

就是在数据库结构中添加一个类似id的字段,这个里边的应该是自动生成的id值,就是你每次创建一条数据就会生成一个唯一的id值,然后用这个id进行传值取值,比如说在update的时候条件要写where id = 1或者几



我知道要那么做,但是我不会传,不会获取。。。能写个函数说明的让我参考最好

#11

update table_name set IP=11.11.11.11 where qq=1234567;

#11

update table_name set IP=11.11.11.11 where qq=1234567;



我知道这么做,我是不知道那一行的QQ我怎么去获取,因为是随机的,不是固定的QQ


上边的js里边调用name=a或者id=a的方法
function a(){}


#11

update table_name set IP=11.11.11.11 where qq=1234567;



我知道这么做,我是不知道那一行的QQ我怎么去获取,因为是随机的,不是固定的QQ


那你这个数据库表里边什么是固定不变的?还有你要改变你哪个字段?



#11

update table_name set IP=11.11.11.11 where qq=1234567;



我知道这么做,我是不知道那一行的QQ我怎么去获取,因为是随机的,不是固定的QQ


那你这个数据库表里边什么是固定不变的?还有你要改变你哪个字段?



改变的就是属性那个字段啊,QQ号码是别的条件筛选出来的,因为QQ号码为唯一的主键,所以可以通过获取QQ号码所在的行,然后表单输入属性的内容,更新数据表


这个属性字段下的内容,我用select给了几个值,怎么选择那个值提交到数据库并更新数据库中表的内容,只改变当前行


还有,你应该是用insert添加值吧?你怎么用select进行插值?那是查,不是增也不是改





#11

update table_name set IP=11.11.11.11 where qq=1234567;



我知道这么做,我是不知道那一行的QQ我怎么去获取,因为是随机的,不是固定的QQ


那你这个数据库表里边什么是固定不变的?还有你要改变你哪个字段?



改变的就是属性那个字段啊,QQ号码是别的条件筛选出来的,因为QQ号码为唯一的主键,所以可以通过获取QQ号码所在的行,然后表单输入属性的内容,更新数据表


qq号码是不是还有别的表?你这个表是查出来的还是已经存好的?

你这个是查出来的吧,显示的时候,把id也传过来,用一个 input type="hidden"把id保存下来,
选择好了select后,提交表单的后,在php里面$_REQUEST将值拿出来呀,然后update



这个属性字段下的内容,我用select给了几个值,怎么选择那个值提交到数据库并更新数据库中表的内容,只改变当前行


还有,你应该是用insert添加值吧?你怎么用select进行插值?那是查,不是增也不是改




我把代码也贴出来,求大神帮忙改

"INSERT INTO `newdata`(`属性`) VALUES ('$_POST[s]') where ?????"
改数据用update,为什么insert

"INSERT INTO `newdata`(`属性`) VALUES ('$_POST[s]') where ?????"
改数据用update,为什么insert




改了,现在是update `newdata` set `属性`='$_POST[s]'

改过之后,你还需要改个地方,就是表单table标签你没写,而是直接写了tr和td,刚刚没加table标签,我用js和jQuery都没获取到qq号,所以你要用table标签包住tr和td,然后再获取QQ号,QQ号可以用js获取或者引入jQuery获取。
如果是js,那就

	var qq = document.getElementById('t1');	var qq_num = qq.innerHTML;	//alert(qq_num);

如果是jQuery(别忘了引入jQuery),那就
var qq_num = $('td:eq(0)').html();




给这个td标签加个id才能document.getElementById('t1')

人气教程排行