你好,我已经使用了下面的代码验证的形式,但是,我使用的方法是不好的,因为我收到错误,如:
您没有为propertydealtype输入值
这个错误消息你可以看到propertydealtype之间没有空格,因为在文本框字段的名称中我不能给空格。
如何解决这个问题?我希望它是这样的:
您没有输入属性交易类型的值!
如何设置空格或用其他方法?
代码如下:
$emptyresult = array();
$emptyresult[]="dealername";
$emptyresult[]="dealerfname";
$emptyresult[]="dealeroccupation";
$emptyresult[]="dealerphone";
$emptyresult[]="dealeremail";
$emptyresult[]="dealeraddress";
$emptyresult[]="ownername";
$emptyresult[]="ImageID";
$emptyresult[]="propertytype";
$emptyresult[]="PropertyDocumentType";
$emptyresult[]="propertydealtype";
$emptyresult[]="currencytype";
$emptyresult[]="prepostedprice";
$emptyresult[]="priceperarea";
$emptyresult[]="dealstatus";
$emptyresult[]="moreaboutgeneralinfo";
$emptyresult[]="propertystreet";
$emptyresult[]="propertyregion";
$emptyresult[]="PropertyArea";
$emptyresult[]="propertydistanceamount";
$emptyresult[]="boundarywall";
$emptyresult[]="boundraywalltype";
$emptyresult[]="infoonboundarywalltype";
$emptyresult[]="streetroad";
$emptyresult[]="plot";
$emptyresult[]="MoreInfoPropertyGeneralInformation";
$emptyresult[]="constructionmethod";
$emptyresult[]="constructionmaterial";
$emptyresult[]="infoaboutconsmaterial";
$emptyresult[]="buildingslabs";
$emptyresult[]="otherinfoaboutbuildingslabs";
$emptyresult[]="floors";
$emptyresult[]="infoaboutfloors";
$emptyresult[]="buildingentrance";
$emptyresult[]="infoaboutentrance";
$emptyresult[]="entrancetype";
$emptyresult[]="numberrooms";
$emptyresult[]="infoaboutrooms";
$emptyresult[]="windowtype";
$emptyresult[]="corridors";
$emptyresult[]="numberandtypekittchen";
$emptyresult[]="numberandtypebathroom";
$emptyresult[]="itemshome";
$emptyresult[]="infoaboutavailibleitemhome";
$emptyresult[]="yard";
$emptyresult[]="yardconstructionmethod";
$emptyresult[]="maingatenumber";
$emptyresult[]="garage";
$emptyresult[]="infoaboutbuilding";
$emptyresult[]="utilities";
$emptyresult[]="propertycondition";
$emptyresult[]="requirements";
$emptyresult[]="AdditionalInformation";
$emptyresult[]="status";
$emptyresult[]="propertyStatus";
$emptyresult[]="remoteemployee";
$emptyresult[]="underconstruction";
foreach($emptyresult as $singlevalue)
{
if(empty($_POST[$singlevalue]))
{
echo 'You have''nt Entered Value for ' .$singlevalue. ' <br>';
}
}
为什么不这样构建数组呢:
$emptyresult['propertydealtype'] = 'Property Deal Type';
foreach($emptyresult as $key => $val) {
if (empty($_POST[$key])) {
echo "You didn't set $val";
}
}
键是您的表单字段名,值是"人类可读"的版本。
尝试使用这样的关联数组。键值是您现在检查的内容,数组的值可以是经过良好格式化的版本。我试着猜测你希望空格如何计算,当然你现在可以改变它来满足你的需要。
我使用!isset()
而不是empty()
,因为它会告诉你$_POST
是否设置了该值,更不用说它是否为空了:
$emptyresult = array();
$emptyresult['dealername'] = 'dealer name';
$emptyresult['dealerfname'] = 'dealer fname';
$emptyresult['dealeroccupation'] = 'dealer occupation';
$emptyresult['dealerphone'] = 'dealer phone';
$emptyresult['dealeremail'] = 'dealer email';
$emptyresult['dealeraddress'] = 'dealer address';
$emptyresult['ownername'] = 'owner name';
$emptyresult['ImageID'] = 'Image ID';
$emptyresult['propertytype'] = 'property type';
$emptyresult['PropertyDocumentType'] = 'Property Document Type';
$emptyresult['propertydealtype'] = 'property deal type';
$emptyresult['currencytype'] = 'currency type';
$emptyresult['prepostedprice'] = 'preposted price';
$emptyresult['priceperarea'] = 'price per area';
$emptyresult['dealstatus'] = 'deal status';
$emptyresult['moreaboutgeneralinfo'] = 'mor eabout general info';
$emptyresult['propertystreet'] = 'property street';
$emptyresult['propertyregion'] = 'property region';
$emptyresult['PropertyArea'] = 'Property Area';
$emptyresult['propertydistanceamount'] = 'property distanceamount';
$emptyresult['boundarywall'] = 'boundary wall';
$emptyresult['boundraywalltype'] = 'boundray wall type';
$emptyresult['infoonboundarywalltype'] = 'info on boundary wall type';
$emptyresult['streetroad'] = 'street road';
$emptyresult['plot'] = 'plot';
$emptyresult['MoreInfoPropertyGeneralInformation'] = 'More Info Property General Information';
$emptyresult['constructionmethod'] = 'construction method';
$emptyresult['constructionmaterial'] = 'construction material';
$emptyresult['infoaboutconsmaterial'] = 'info about cons material';
$emptyresult['buildingslabs'] = 'buildings labs';
$emptyresult['otherinfoaboutbuildingslabs'] = 'other info about buildings labs';
$emptyresult['floors'] = 'floors';
$emptyresult['infoaboutfloors'] = 'info about floors';
$emptyresult['buildingentrance'] = 'building entrance';
$emptyresult['infoaboutentrance'] = 'info about entrance';
$emptyresult['entrancetype'] = 'entrance type';
$emptyresult['numberrooms'] = 'number rooms';
$emptyresult['infoaboutrooms'] = 'info about rooms';
$emptyresult['windowtype'] = 'window type';
$emptyresult['corridors'] = 'corridors';
$emptyresult['numberandtypekittchen'] = 'number and type kittchen';
$emptyresult['numberandtypebathroom'] = 'number and type bathroom';
$emptyresult['itemshome'] = 'items home';
$emptyresult['infoaboutavailibleitemhome'] = 'info about availible item home';
$emptyresult['yard'] = 'yard';
$emptyresult['yardconstructionmethod'] = 'yard construction method';
$emptyresult['maingatenumber'] = 'main gate number';
$emptyresult['garage'] = 'garage';
$emptyresult['infoaboutbuilding'] = 'info about building';
$emptyresult['utilities'] = 'utilities';
$emptyresult['propertycondition'] = 'property condition';
$emptyresult['requirements'] = 'requirements';
$emptyresult['AdditionalInformation'] = 'Additional Information';
$emptyresult['status'] = 'status';
$emptyresult['propertyStatus'] = 'property Status';
$emptyresult['remoteemployee'] = 'remote employee';
$emptyresult['underconstruction'] = 'under construction';
foreach($emptyresult as $single_key => $single_value) {
if (!isset($_POST[$single_key])) {
echo "You have'nt Entered Value for " . $single_value . "<br />";
}
}