多个提交和一个提交的道理是相同的,只是一些细节上要注意。
10年积累的成都网站建设、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先建设网站后付款的网站建设流程,更有伊春免费网站建设让你可以放心的选择与我们合作。
提交一个你懂了,我还是提一下,表单是:
form
input type=text name=name
input type=text name=sex
input type=text name=age
input type=text name=address
/form
PHP存数据库的语句是:
$sql="insert into tab(...) values ($_POST[...])";//省略字段和值
那么多个提交的方法一,表单是:
form
input type=text name=name1input type=text name=sex1input type=text name=age1input type=text name=address1
input type=text name=name2input type=text name=sex2input type=text name=age2input type=text name=address2
/form
PHP存数据库语句是:
$sql="insert into tab(...) values ($_POST[...1])";//省略字段和值
mysql_query($sql);
$sql="insert into tab(...) values ($_POST[...2])";//省略字段和值
mysql_query($sql);
上面方法一写的例子是两条,多条的方法相同,技巧就是输出表单使用JS的循环,存盘的PHP代码也可以循环,并且能够判断为空的就不提交,比如表单20条,只填了5条,就只存5条到数据库。
方法二是使用数组,表单:
form
input type=text name=nameinput type=text name=sexinput type=text name=ageinput type=text name=address
input type=text name=nameinput type=text name=sexinput type=text name=ageinput type=text name=address
input type=text name=nameinput type=text name=sexinput type=text name=ageinput type=text name=address
/form
PHP代码是:
for ($i=0;$icount($_POST["name"]);$i++)
if ($_POST["name"][$i]!='')
{
$sql="insert into tab(...) values ($_POST[...][$i])";//省略字段和值
mysql_query($sql);
}
这样表单可以写任意多行,PHP里面是数组,能够自动获取有多少数据。
tp开启事务: M()-startTrans(); M()-commit();M()-rollback();#thinkphp3.2
1)首先你会不会修改一个数据,是真正明白操作的修改?
2)针对两个数据库各建一个连接,$link1和$link2,然后对后面操作数据库的操作复制一份,采用不同的连接做输入参数,这样就能同时修改两个数据库了。
举例如下:
创建userinfo_update.php页面用于查询用户信息,先显示信息,在修改:
先通过GET获取用户编号查询用户信息:
$sql = "select * from user_info where user_id='".$_GET['userId']."'";
$result = mysql_query($sql,$con);
if($row = mysql_fetch_array($result)){
}
页面效果:
创建update.php文件,用于修改用户信息:
使用到了mysql_affected_rows() 函数返回前一次 MySQL 操作所影响的记录行数。
//通过post获取页面提交数据信息
$userId = $_POST[userId];
$userName = $_POST[userName];
$userAge = $_POST[userAge];
$sql = "update user_info set user_name='".$userName."',user_age=".$userAge." where user_id='".$userId."'";
mysql_query($sql,$conn);//执行SQL
$mark = mysql_affected_rows();//返回影响行数
$url = "userinf_select.php";
运行结果
创建delete.php文件,完成删除用户信息功能:
$userId = $_GET['userId'];
include 'connection.php';
$sql = "delete from user_info where user_id='".$userId."'";
mysql_query($sql,$con);
$mark = mysql_affected_rows();//返回影响行数
if($mark0){
echo "删除成功";
}else{
echo "删除失败";
}
mysql_close($con);
运行结果:
给你个思路
先最大化 PHP 效率充分利用 系统资源。
把 sql 拆开比如2万一个用一个 php 去跑 总共用5个 php 一起跑。
然后最大化 mysql 效率
查一下mysql 的瓶颈在哪。针对性的去优化。
查询慢 就看看索引什么的
写慢就查查 buffer 什么的。
这里强烈建议读写分离。
用不通的数据库实例去分别处理读写。
再看看磁盘 IO 性能。看看队列数据。不行就上阵列。或者单表部署单个磁盘。或者读写在不同的磁盘进行。
当然用缓存也可以。
比如把10万条都独出来存到 memcache 等内存缓存中。循环处理数据的时候读内存的数据不用查数据库。
还有终极大招。
你直接把数据库都搬内存里面。。。