РНР мини-пароль-окно: слишком много петель


<div class="minipassbox" style="margin-top: 5px;">
               <?php
                   for($i = 1; $i <= 3; $i++) {
                      $marginRight = ($i < 3 ? "margin-right:4px" : "");
                      echo "<div style='width:56px;float:left;{$marginRight}'>";
                      echo "<label for='param_kind{$i}' style='padding-left:4px;'>{$i}. Kind</label>";
                      echo "<select id='param_kind{$i}' class='selFields' name='param_kind{$i}' style='margin-top:3px'>";
                      echo  "<option selected='' value='-1'>--- </option>";
                      for($j = 1; $j <= 16; $j++) {
                         $selected = ($oRecherche->getParamValue("param_kind{$i}") == $j ? "selected='selected'" : "");
                         $option_text = ($j == 1 ? "&lt; 2 Jah." : $j + "Jahre");
                         echo "<option value='{$j}' {$selected}>{$option_text}</option>";
                      }
                      echo "</select>";
                      echo "</div>";
                   }   
               ?>
               <div style="clear:left"></div>
            </div>


266
0
php
задан 16 июня 2011 в 10:06 Источник Поделиться
Комментарии
1 ответ

Два совета:


  1. Использовать в PHP альтернативный синтаксис

    При смешивании HTML и PHP, это хорошая практика, чтобы использовать PHP в альтернативный синтаксис:

    <?php for ($i = 1; $i <= 3; $i++): ?>
    ..
    <?php endfor ?>

  2. Улучшить HTML код


    • Используйте двойные кавычки в атрибутах тегов (обычный HTML)

    • Попробуйте соблюдать отступы

    • Движение стиль CSS назначения


Окончательный код предложения:

<style type="text/css">
.minipassbox {
margin-top: 5px;
}
.minipassbox > div {
width: 56px;
float: left;
}
.minipassbox > div.lt3 {
margin-right: 4px;
}
.minipassbox label {
padding-left: 4px;
}
.selFields {
margin-top: 3px;
}
.boxclear {
clear: left;
}
</style>
<div class="minipassbox">
<?php for ($i = 1; $i <= 3; $i++): ?>
<div <?php echo $i < 3 ? ' class="lt3"' : '' ?>
<label for="param_kind<?php echo $i ?>"><?php echo $i ?>. Kind</label>
<select id="param_kind<?php echo $i ?>" class="selFields" name="param_kind<?php echo $i ?>">
<option value="-1">--- </option>
<?php for ($j = 1; $j <= 16; $j++): ?>
<option value=""<?php echo $j ?>"<?php echo $oRecherche->getParamValue("param_kind$i") == $j ? ' selected="selected"' : '' ?>><?php echo $j == 1 ? "&lt; 2 Jah." : $j + "Jahre" ?></option>
<?php endfor ?>
</select>
</div>
<?php endfor ?>
<div class="boxclear"></div>
</div>

4
ответ дан 16 июня 2011 в 01:06 Источник Поделиться