所以我在网站上提交了一些表格,(通过jQuery.post)并尝试解析结果。它适用于简单的事情,但对于我的实际形式许多值都填充了字符串零。所以例如medicalProvider=MediCo
正在变为$_POST['medicalProvider']="0"
。
这个页面可以正常使用较短的POST字符串,并且它曾经使用这个确切的形式工作正常,但我没有触及配置,所以我不知道问题是什么。
以下是readfile('php://input')
和var_dump($_POST)
的结果,字面意思是文件的前两行:
// readfile('php://input'):
medicalProvider=MediCo&medicalPremium=7000&medicalOccurs=0&medicalKind=0&medicalEmpOnly=50&medicalEmpSpouse=0&medicalEmpDependant=0&medicalEmpFamily=0&medicalProvider=0&medicalPremium=0&dentalProvider=DentCo&dentalPremium=500&dentalOccurs=0&dentalKind=1&dentalEmpOnly=0&dentalEmpSpouse=2&dentalEmpDependant=0&dentalEmpFamily=0&dentalProvider=0&dentalPremium=0&longTermProvider=HappCo&longTermPremium=9000&longTermOccurs=1&longTermKind=2&longTermEmpOnly=0&longTermEmpSpouse=0&longTermEmpDependant=0&longTermEmpFamily=0&longTermProvider=0&longTermPremium=0&shortTermProvider=&shortTermPremium=&shortTermOccurs=&shortTermKind=&shortTermEmpOnly=&shortTermEmpSpouse=&shortTermEmpDependant=&shortTermEmpFamily=&shortTermProvider=&shortTermPremium=&lifeProvider=DeathCo&lifePremium=70000&lifeOccurs=1&lifeKind=4&lifeEmpOnly=80&lifeEmpSpouse=2&lifeEmpDependant=0&lifeEmpFamily=0&lifeProvider=0&lifePremium=0
//var_dump($_POST):
array(40) {
["medicalProvider"]=>
string(1) "0"
["medicalPremium"]=>
string(1) "0"
["medicalOccurs"]=>
string(1) "0"
["medicalKind"]=>
string(1) "0"
["medicalEmpOnly"]=>
string(2) "50"
["medicalEmpSpouse"]=>
string(1) "0"
["medicalEmpDependant"]=>
string(1) "0"
["medicalEmpFamily"]=>
string(1) "0"
["dentalProvider"]=>
string(1) "0"
["dentalPremium"]=>
string(1) "0"
["dentalOccurs"]=>
string(1) "0"
["dentalKind"]=>
string(1) "1"
["dentalEmpOnly"]=>
string(1) "0"
["dentalEmpSpouse"]=>
string(1) "2"
["dentalEmpDependant"]=>
string(1) "0"
["dentalEmpFamily"]=>
string(1) "0"
["longTermProvider"]=>
string(1) "0"
["longTermPremium"]=>
string(1) "0"
["longTermOccurs"]=>
string(1) "1"
["longTermKind"]=>
string(1) "2"
["longTermEmpOnly"]=>
string(1) "0"
["longTermEmpSpouse"]=>
string(1) "0"
["longTermEmpDependant"]=>
string(1) "0"
["longTermEmpFamily"]=>
string(1) "0"
["shortTermProvider"]=>
string(0) ""
["shortTermPremium"]=>
string(0) ""
["shortTermOccurs"]=>
string(0) ""
["shortTermKind"]=>
string(0) ""
["shortTermEmpOnly"]=>
string(0) ""
["shortTermEmpSpouse"]=>
string(0) ""
["shortTermEmpDependant"]=>
string(0) ""
["shortTermEmpFamily"]=>
string(0) ""
["lifeProvider"]=>
string(1) "0"
["lifePremium"]=>
string(1) "0"
["lifeOccurs"]=>
string(1) "1"
["lifeKind"]=>
string(1) "4"
["lifeEmpOnly"]=>
string(2) "80"
["lifeEmpSpouse"]=>
string(1) "2"
["lifeEmpDependant"]=>
string(1) "0"
["lifeEmpFamily"]=>
string(1) "0"
}
答案 0 :(得分:2)
medicalProvider正在设置两次。如果您有多次使用相同的POST(或GET)变量,则将其设置为后者。