我有这个用于酒店网站的表格。我需要验证房间里的人数。用户选择房间数量和每个房间的人数。我正在遍历房间并确认每个房间不超过 4 人,包括成人和儿童。
我已经完成了一切,但我正在使用的课程似乎没有在循环中工作。这就是发生的事情;如果列表上的最后一个房间与人数相符,班级将允许其将数据记录在数据库中并继续下一步。但是,它仍然会显示房间内不允许超过 4 人的错误消息。它应该做的是返回上一个表单并显示错误,让用户再次选择房间。
这是代码,因此您可以帮助我:
foreach ($_POST['adt'] as $key => $adt){
$chd = $_POST['chd'][$key];
$v = new validacao;
echo $v->validarApt($chd, $adt);
echo $v->validarQpt($qpl);
echo $v->validarTpl($tpl);
echo $v->validarChd($chdroom);
echo $v->validarAdt($adt);
}
if ($v->verifica()) {
在此之后,如果经过验证,它应该记录在数据库中并继续执行代码。
这是课程:
<?
class validacao {
var $campo;
var $valor;
var $msg = array();
function mensagens($num, $campo, $max, $min) {
$this->msg[0] = "<img src='imagens/x.jpg' /> Os apartamentos neste hotel permitem a acomodação de no máximo 4 passageiros, incluindo adultos e crianças <br />"; // apartamentos
$this->msg[1] = "<img src='imagens/x.jpg' /> Este hotel não possui apartamentos quádruplos, por favor selecione 2 apartamentos duplos <br />"; // apartamentos
$this->msg[2] = "<img src='imagens/x.jpg' /> Este hotel não possui apartamentos triplos, por favor selecione 2 apartamentos, 1 duplo e 1 single ou faça nova busca e procure por hotéis com apartamentos triplos que tenham preços divulgados em nossa tabela <br />"; // apartamentos
$this->msg[3] = "<img src='imagens/x.jpg' /> Este roteiro não dispõe de preços diferenciados para crianças, por favor inclua a criança como adulto <br />"; // apartamentos
$this->msg[4] = "<img src='imagens/x.jpg' /> Você deve incluir pelo menos 1 adulto no apartamento <br />"; // apartamentos
return $this->msg[$num];
}
function validarApt($adt,$chd) {
if ($chd + $adt >= 5) {
return $this->mensagens(0, null, null, null);
}
}
function validarQpt($qpl) {
if ($qpl == 0) {
return $this->mensagens(1, null, null, null);
}
}
function validarTpl($tpl) {
if ($tpl == 0) {
return $this->mensagens(2, null, null, null);
}
}
function validarChd($chdroom) {
if ($chdroom == 0) {
return $this->mensagens(3, null, null, null);
}
}
function validarAdt($adt) {
if ($adt == 0) {
return $this->mensagens(4, null, null, null);
}
}
function verifica() {
if (sizeof($this->msg) == 0) {
return true;
} else {
return false;
}
}
}
?>
我感谢您的帮助。谢谢!