2013-06-26 2 views
0

У меня есть проблема с использованием set_select иign_checked в моих формах, я добавляю их в свои существующие формы, поскольку я являюсь этапом разработки, где я пытаюсь чистые вещи и неудачные подтверждения сброса форм не были большой проблемой, когда я все еще работал над проектом, но теперь его близится к концу, и это станет серьезной головной болью.Codeigniter, проблемы с использованием set_select() и set_checked()

Во-первых, set_select, у меня есть этот код, который выводит меня из массива, который передается в представление из контроллера, который получает результаты из таблицы в моей базе данных, форма, которую я реализую в этом случае, имеет 10 drop каждый из которых соответствует таблице в моей базе данных. В любом случае это код:

<label for="rating">Rating: </label> 
<select name="rating"> 
<?php 
    if(isset($rating) && $rating != 'none') { 
    echo '<option value="" '.set_select('rating', '', TRUE).'></option>'; 
     foreach($rating as $row) { 
      echo '<option value="'.$row->door_rating_rating.set_select('rating', $row->door_rating_rating).'">'.$row->door_rating_rating.'</option>'; 
     } 
    } else { 
     echo '<option value="none">Nothing to list</option>'; 
    } 
?> 
</select> 

Он просто не работает, и, насколько я могу видеть, что не должно быть проблемой с моим кодом, но это первый раз, когда я использовал это, и я посмотрел на примеры его использования, но не могли найти пример использования его в цикле for, так что я делаю это даже возможно?

Это мой set_checked код в поле зрения, и это тоже не работает после неудачной проверки:

Temporary Refuge Door?<input type="checkbox" class="temp_ref" name="tempref" value="1" <?php echo set_checkbox('tempref', '1'); ?> /> 

Любая помощь с любой из них действительно были бы оценены.

+0

Почему бы не использовать form_dropdown. http://stackoverflow.com/questions/8049458/codeigniter-form-helper-set-select – karmafunk

+0

Нет ли способа заставить его работать так, как я выпустил свой снимок? как изменение метода, который я использую, меняет примерно 10 выпадающих списков в 5 представлениях, а затем мне нужно будет отредактировать все функции в моделях, которые извлекают данные, поскольку form_dropdown использует массивы по-разному, как я создал мои, >, и я использую только значение каждого ключа для значения и текста в опции. – Sam

+0

Я не знаю, я использовал только form_dropdown. Не уверен, почему вы хотели бы сделать это долгий путь, если form_dropdown не сделает что-то, что вам нужно. – karmafunk

ответ

2

Похоже, у вас был параметр set_select в кавычках для значения параметра. Я переместил его после него. Я также сделал редактирование, чтобы использовать printf для лучшей читаемости.

<label for="rating">Rating: </label> 
<select name="rating"> 
<?php 
    if(isset($rating) && $rating != 'none') { 
    echo '<option value="" '.set_select('rating', '', TRUE).'></option>'; 
     foreach($rating as $row) { 
      printf('<option value="%s" %s>%s</option>', $row->door_rating_rating, set_select('rating', $row->door_rating_rating), $row->door_rating_rating); 
     } 
    } else { 
     echo '<option value="none">Nothing to list</option>'; 
    } 
?> 
</select> 
+0

Тестирование этого сейчас! Спасибо! – Sam

+0

Сохранял мне массу времени! ты какой-то колдун! – Sam

+0

Ха-ха, спасибо, чувак. :) – karmafunk

1

Чтобы решить set_select(), попробуйте следующее. Предполагая, что у вас есть массив с именем $ isps, который содержит поле id и name.

<select id="isp" name="isp"> 
 
<option value="" selected>Select a ISP</option> 
 
<?php foreach ($isps as $row) { ?> 
 
<option value="<?php echo $row->id ; ?>" <?php echo set_select('isp', $row->id, False); ?> ><?php echo $row->name ; ?> </option> 
 
<?php } ?> 
 
</select>

+0

Спасибо, что нашли время, чтобы опубликовать это, я больше не нуждаюсь в этом, но я уверен, что другие найдут его полезным. – Sam

+0

@Sam Добро пожаловать, рад помочь :) – rumman0786