欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP中實(shí)現(xiàn)接收多個(gè)name相同但Value不相同表單數(shù)據(jù)實(shí)例

 更新時(shí)間:2015年02月03日 11:40:04   投稿:junjie  
這篇文章主要介紹了PHP中實(shí)現(xiàn)接收多個(gè)name相同但Value不相同表單數(shù)據(jù)實(shí)例,需要的朋友可以參考下

最近在一個(gè)詢盤留言管理系統(tǒng)時(shí)候一個(gè)問題,留言的前臺(tái)的表單當(dāng)中出現(xiàn)很多name值相同的input框,這些框是由用戶填寫的各不相同的值,現(xiàn)在要遷移到php平臺(tái)上,而且要求不能改變前臺(tái)的任何表單(因?yàn)橛玫竭@個(gè)表單的網(wǎng)站實(shí)在是太多了,所以必須要考慮轉(zhuǎn)移的兼容性,就連form的提交地址也不能變,必須是提交到某個(gè)asp頁(yè)面上)。form提交地址問題,可以用偽靜態(tài)或其它方法直接解決。由于以前的系統(tǒng)是由asp做的,asp在處理相同name值的表單的時(shí)候,是直接用逗號(hào)把前臺(tái)提交的值連起來,而php卻不一樣,它接收相同的name的input的時(shí)候,是最后一個(gè)把前面的值給覆蓋掉了。那么,怎么樣在不改寫前臺(tái)的基礎(chǔ)上,做到能接受到所有name相同的input的值呢?當(dāng)時(shí)腦子里浮現(xiàn)兩個(gè)想法,第一個(gè)是讓這個(gè)input的name以數(shù)組的方式傳到后臺(tái),然后作出處理,但是很快被否定掉了,因?yàn)檫@樣也必須要改動(dòng)前臺(tái)的代碼,讓
<input type="text" name="a" />改成<input type="text" name="a[]" />。第二個(gè)想法是php配置當(dāng)中,有沒有類似的設(shè)置可以讓php像asp這樣處理相同name值的表單,查了半天資料,也沒有找到。

最后發(fā)現(xiàn),只能退而求其次,稍微改動(dòng)一下前臺(tái),把name換成數(shù)組,幸好這樣去用的網(wǎng)站并不多。那么接下來就是后臺(tái)處理數(shù)據(jù)的問題了,前臺(tái)的name有一部分改了,這時(shí)候就會(huì)出現(xiàn)一種情況,php不知道由form提交過來的是字符串還是數(shù)組,那么怎么樣去做呢,我的辦法是寫一個(gè)函數(shù):

function input_treat($input){
 if(gettype($input)=="string"){
 return htmlentities(trim($input),ENT_QUOTES);
 }else if(gettype($input)=="array"){
 $nd="";
 foreach($input as $v){
  $nd .=htmlentities(trim($v),ENT_QUOTES)." ";
 }
 return $nd;
 }else{
 return false;
 }
}

用input_treat()函數(shù)去處理GET或者POST過來的值,如果是字符串,那么把字符串處理一下返回,如果是數(shù)組,那么遍歷這個(gè)輸入,用空格把數(shù)組的每個(gè)元素連起來,然后返回整個(gè)連起來的字符串。

這樣,整個(gè)需求就實(shí)現(xiàn)了,缺點(diǎn)是對(duì)一部分使用相同name表單的網(wǎng)站必須要更改一下數(shù)據(jù),如果你有更好的方法,歡迎和我留言溝通。

相關(guān)文章

  • Apache中php.ini的設(shè)置方法

    Apache中php.ini的設(shè)置方法

    無論是IIS 還是 Apache, 在啟動(dòng)PHP的時(shí)候,默認(rèn)都從系統(tǒng)變量"C:\Windows"這個(gè)目錄中尋找。 如果要在系統(tǒng)中同時(shí)使用IIS和Apache來運(yùn)行PHP,而且PHP的版本又不一樣,那么需要為Apache指定自己的PHP環(huán)境。
    2013-02-02
  • PHP如何使用cURL實(shí)現(xiàn)Get和Post請(qǐng)求

    PHP如何使用cURL實(shí)現(xiàn)Get和Post請(qǐng)求

    這篇文章主要介紹了PHP如何使用cURL實(shí)現(xiàn)Get和Post請(qǐng)求,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • PHP函數(shù)篇詳解十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換函數(shù)說明

    PHP函數(shù)篇詳解十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換函數(shù)說明

    中文字符編碼研究系列第一期,PHP函數(shù)篇詳解十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制互相轉(zhuǎn)換函數(shù)說明,主要掌握各進(jìn)制轉(zhuǎn)換的方法,以應(yīng)用于實(shí)際開發(fā)
    2011-12-12
  • php反射類ReflectionClass用法分析

    php反射類ReflectionClass用法分析

    這篇文章主要介紹了php反射類ReflectionClass用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了php反射類的概念、功能與具體使用方法,需要的朋友可以參考下
    2016-05-05
  • Smarty foreach控制循環(huán)次數(shù)的實(shí)現(xiàn)詳解

    Smarty foreach控制循環(huán)次數(shù)的實(shí)現(xiàn)詳解

    在smarty中數(shù)組是經(jīng)常會(huì)用到的,循環(huán)遍歷數(shù)組用 section 或者 foreach ,如何得到數(shù)組長(zhǎng)度或者判斷一個(gè)數(shù)組個(gè)數(shù)呢
    2013-07-07
  • PHP獲取POST數(shù)據(jù)的幾種方法匯總

    PHP獲取POST數(shù)據(jù)的幾種方法匯總

    本文給大家匯總介紹了PHP獲取POST數(shù)據(jù)的幾種常用方法,這里分享給大家,有需要的小伙伴來參考下吧。
    2015-03-03
  • PHP實(shí)現(xiàn)一維數(shù)組與二維數(shù)組去重功能示例

    PHP實(shí)現(xiàn)一維數(shù)組與二維數(shù)組去重功能示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)一維數(shù)組與二維數(shù)組去重功能,結(jié)合實(shí)例形式分析了php針對(duì)一維數(shù)組與二維數(shù)組進(jìn)行遍歷、判斷、排序、去重等相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • php post換行的方法

    php post換行的方法

    在本篇文章里小編給大家整理了關(guān)于php post換行的方法以及實(shí)例內(nèi)容,有需要的朋友們可以參考學(xué)習(xí)下。
    2020-02-02
  • php常用正則函數(shù)實(shí)例小結(jié)

    php常用正則函數(shù)實(shí)例小結(jié)

    這篇文章主要介紹了php常用正則函數(shù),結(jié)合實(shí)例形式總結(jié)分析了php正則表達(dá)式常用函數(shù),包括preg_replace、preg_match及preg_match_all函數(shù)的功能、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2016-12-12
  • PHP+MySql+jQuery實(shí)現(xiàn)的

    PHP+MySql+jQuery實(shí)現(xiàn)的"頂"和"踩"投票功能

    這篇文章主要為大家詳細(xì)介紹了PHP+MySql+jQuery實(shí)現(xiàn)的"頂"和"踩"投票功能,具有一定的參考價(jià)值,感興趣的朋友可以參考一下
    2016-05-05

最新評(píng)論