Повторяет имя строки, где размещен идентификатор, для предварительно выбранного значения формы - PullRequest
0 голосов
/ 12 октября 2011

Надеюсь, это будет легко, но мне не хватает навыков!

                                <select name="search_category"  id="select1" >
<option value="">By Category</option>
 <?php if (!empty($_POST['search_category'])) { ?>
 <option value="<?php echo $_POST['search_category']; ?>" selected="selected"><?php echo $_POST['search_category']; ?></option>
<?php }?>
  <?php foreach($categoriesListt as $row) : ?>

  <option value="<?php echo $row->id; ?>"><?php echo $row->name; ?></option>

                                      <?php endforeach; ?>
                                </select>

Выше приведено одно из множества, выбранных в поисковом модуле.Он возвращает динамический список параметров из запроса выше на моей странице.Моя цель состоит в том, чтобы последний выбранный вариант был предварительно выбран.Все работает, как задумано, но моя проблема на самом деле минимальна;значением опубликованной категории поиска является идентификатор ($ row-> id. Я надеюсь использовать для отображения соответствующее $ row-> name, но сохранить значение для значения, чтобы моя функция поиска все еще работала.

Другими словами, я надеюсь сделать что-то вроде:

<?php echo $row->name;  WHERE ID = $_POST['search_category']

Есть ли простой способ сделать это в приведенном выше коде, или мне нужно будет добавить специальный запрос ввверху моей страницы, выбирая имя отдельной строки, которое соответствует опубликованному идентификатору?

Спасибо!

РЕДАКТИРОВАТЬ: Для упрощения у меня уже есть запрос, который возвращает строку-> идентификатор и строка->name, которое я использую в цикле foreach для заполнения значений и имен опций. Мне просто нужен способ или строка, которую я могу добавить в свой запрос, чтобы также получить значение row-> name, соответствующее идентификатору POSTED.

1 Ответ

1 голос
/ 12 октября 2011

Я бы написал короткую функцию, которая дает эту функцию даже для других приложений.так же, как

<?php 

    function($id, $table) {

        select ... etc

    }
?>

В целях безопасности я бы предложил использовать Подготовленные заявления или mysql_escape

Надеюсь, что смогу помочь

Возможно

SELCET('id', 'name' FROM yourTable WHERE 'name' = $_POST['ID']) 

вамчто-то вроде этого, или вы бы выбрали опцию

<?php foreach($categoriesListt as $row) : ?> 
    <option value="<?php echo $row->id; ?>"
          <?php if($row->name == $_POST['search_category']) : ?>
               selected="selected"<?php } ?>>
        <?php echo $row->name; ?>
    </option> 
<?php endforeach; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...