在生成的表單元素以及之前的元素的名字加上中括號即可實(shí)現(xiàn)
攀枝花ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
比如: name="contents" = name="contents[]",最后提交獲取到的數(shù)據(jù)是一個數(shù)組形式的。
代碼如下:
form name="form1" method="post" action="index.php?action=ok"
1.input type="text" name="contents[]" value=""
2.input type="text" name="contents[]" value=""
3.input type="text" name="contents[]" value=""
input type="submit" value="提交"
/form
?php
if($_GET['action'] == 'ok'){
$contents = $_POST['contents'];
print_r($contents);
}
?
得到的數(shù)據(jù)是數(shù)組形式的,遍歷即可。
不知道的情況,先獲取打印出來,你就知道了。
獲取出來的是個數(shù)組,也就是相同名字歸為一個數(shù)組,然后你通過 循環(huán)一個個的賦值插入即可。
類似:
獲取到的值: $arr = array( 'xmuser'=array(0='x',1='y') , 'bumen'=array(0='x1',1='y'1) );
計算數(shù)組內(nèi)最大值,直接 count( $arr['xmuser'] ) ;
他是按順序來接收數(shù)值的,所以,按照順序:0、1、2、3 ... 賦值變量插入即可。 或者你可以改成MySQL 的 批量插入方法,一樣。 量不大都可實(shí)現(xiàn)。 MySQL 批量插入是有一個峰值的。
for 或 foreach 直接循環(huán) 就行。 自己練著寫吧。
input的name用數(shù)組,比如:
tr
tdinput?type="text"?name="name1[]"/td
tdinput?type="text"?name="name2[]"/td
/tr
tr
tdinput?type="text"?name="name1[]"/td
tdinput?type="text"?name="name2[]"/td
/tr
tr
tdinput?type="text"?name="name1[]"/td
tdinput?type="text"?name="name2[]"/td
/tr
提交后$_POST['name1']、$_POST['name2']都會以數(shù)組的方式儲存著3行tr的每個值,通過foreach可以把它們逐行添加進(jìn)數(shù)據(jù)表
沒明白你什么意思,你提問的太亂了,是不是想寫6個Input 然后提交只要有內(nèi)容就入庫,沒有就跳過???
如果是這樣的話,你沒有必要寫6個表單,寫一個表單里面放6個 input 標(biāo)簽就可以了,每個input的 屬性 : name 保持一致,提交過去后是一個二維數(shù)組,直接迭代入庫。
多個提交和一個提交的道理是相同的,只是一些細(xì)節(jié)上要注意。
提交一個你懂了,我還是提一下,表單是:
form
input type=text name=name
input type=text name=sex
input type=text name=age
input type=text name=address
/form
PHP存數(shù)據(jù)庫的語句是:
$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存數(shù)據(jù)庫語句是:
$sql="insert into tab(...) values ($_POST[...1])";//省略字段和值
mysql_query($sql);
$sql="insert into tab(...) values ($_POST[...2])";//省略字段和值
mysql_query($sql);
上面方法一寫的例子是兩條,多條的方法相同,技巧就是輸出表單使用JS的循環(huán),存盤的PHP代碼也可以循環(huán),并且能夠判斷為空的就不提交,比如表單20條,只填了5條,就只存5條到數(shù)據(jù)庫。
方法二是使用數(shù)組,表單:
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里面是數(shù)組,能夠自動獲取有多少數(shù)據(jù)。
$sql?=?"insert?into?myorder?(pid,amount,ordernumber,time,uid,status)?VALUES?";
foreach?($ShoppingCart?as?$k?=?$v){
$sql?.=?"(".$v['pid'].",".$v['amount'].",'$ordernumber','$time','$uid','$status'),";
$sql?=?substr($sql,?0,strlen($sql)-1);
$res?=?mysql_query($sql,$conn);
if(!$res)?return?false;
}