0

我有一个带有两个输入字段的登录 div。将检查每个输入字段是否有错误。

当我提交数据时,出现了一些问题。这是HTML:

<div class="small">
    <?php if (!isset($errors['a'])):?>
          <input type="text" id="a" name="a" value="<?php echo isset ($_POST['a'])? $_POST['a'] : 'Login'; ?>"/>
     <?php endif;?>

     <?php if (isset($errors['a'])):?>
          <input class="log-error" type="text" id="a" name="a" value="<?php echo isset ($_POST['a'])? $_POST['a'] : 'Login'; ?>"/>
      <?php endif;?>
</div>

<?php if (isset($errors['a'])):?>
     <?php echo "<div id='errordiv'></div><div class='error'>";
      echo $errors['a'][0];
      echo "</div>";
endif;?>

<div class="small">
      <?php if (!isset($errors['b'])):?>
           <input type="text" id="b" name="b" value="<?php echo isset ($_POST['b'])? $_POST['b'] : 'Password'; ?>"/>
      <?php endif;?>

      <?php if (isset($errors['b'])):?>
           <input class="log-error" type="text" id="b" name="b" value="<?php echo isset ($_POST['b'])? $_POST['b'] : 'Password'; ?>"/>
       <?php endif;?>
</div>

<?php if ( ( isset($errors['b']) ) && (empty($errors['a'][0]) == true) ):?>
     <?php echo "<div id='errordiv'></div><div class='error'>";
     echo $errors['b'][0];
     echo "</div>";
endif;?>

提交数据时,输入类不会同时显示两个错误。似乎值标签导致了这个问题。

当我从两个输入字段中删除 value-tag 时,它将同时显示两者的错误输入类。

4

1 回答 1

0

在我看来,这似乎存在逻辑误解。

如果您想同时显示这两个错误 - 替换此行

<?php if ( ( isset($errors['b']) ) && (empty($errors['a'][0]) == true) ):?>

有了这个

 <?php if (isset($errors['b'])):?>
于 2012-07-27T15:51:03.263 回答