установите флажки из результата MySQL - PullRequest
1 голос
/ 28 января 2011

У меня есть таблица (type, typeID, toID) Я хотел бы создать массив результатов и установить / снять флажки с соответствующих флажков, код, который у меня не работает, проверяет только первый флажок.

  <ul class="fields">
  <?php
//
        $query = mysql_query("SELECT typeID FROM assign WHERE type='shades' AND    toID='$row[ID]'")or die(mysql_error());
        $item = mysql_fetch_array($query);
echo'
 <li>
           <label>
             <input type="checkbox" class="checkbox" name="shades[]" ';
    if(in_array("2",$item)){
                         echo" checked=\"checked\" ";};
    echo'value="2"/>Front Shade</label>
</li>
        <li>
    <label><input type="checkbox" class="checkbox" name="shades[]" ';
    if(in_array("4",$item)){echo" checked=\"checked\" ";};
    echo'value="4"/>1 Pair of End Shades</label>
  <li>
    <label><input type="checkbox" class="checkbox" name="shades[]" ';
    if(in_array("1",$item)){echo" checked=\"checked\" ";};
    echo'value="1"/>Left End Shade</label>
  </li>
   <li>
    <label><input type="checkbox" class="checkbox" name="shades[]" ';
    if(in_array("3",$item)){echo" checked=\"checked\" ";};
    echo'value="3"/>Right End Shade</label>
  </li>
';


?>
</ul>

Ответы [ 2 ]

1 голос
/ 28 января 2011

mysql_fetch_array () извлекает одну строку из результата. Каждая строка будет содержать один typeID. Вам придется перебирать строки и что-то делать. Приведенный ниже код добавит все идентификаторы в массив, в котором вы можете искать.

$typeIdArray = array();

while($row = mysql_fetch_array($query)) {
    $typeIdArray[] = $row['typeID'];
}
0 голосов
/ 28 января 2011

Почему вы не используете цикл для набора результатов?Вам нужен только первый элемент из набора результатов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...