Как получить значение из элементов и добавить в массив с конкретными именами, используя цикл - PullRequest
0 голосов
/ 13 октября 2009

В настоящее время я отправляю переменную запроса в php-файл следующим образом:

      query = "?price_from=" +price_from+ "&price_to=" + price_to etc etc...

Я хочу заполнить эту переменную запроса, используя цикл, чтобы проверить, выбрал ли пользователь какие-либо критерии поиска в раскрывающихся списках, существующих на странице ... Выбор критериев поиска необязателен только *

Как мне это сделать?

Помните, что если для раскрывающихся списков значение по умолчанию равно 001, то пользователь не ввел никаких критериев (например, диапазон цен). Итак, я хочу, чтобы цикл пропустил этот выпадающий список и перешел к следующему. И если он найдет любое значение, кроме 001, я хочу, чтобы он заполнил переменную запроса.

Основная проблема в том, что php-файл использует имена переменных, такие как «цена от» и «цена до» из переменной запроса, и если в переменной «цена до» ничего не задано, то он просто выведет «неопределенное»). или что-то ...

Помощь!


     <html> 
     <?php 

      foreach($_GET as $key => $value) { 
      if($value!='001') { 
            echo $key . ' has a value of ' . $value . '<br>'; 
      } 
      } 

       ?> 
      </html> 

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

Ответы [ 3 ]

0 голосов
/ 13 октября 2009
<html>
 <?php
     $where = '';
     foreach($_GET as $key => $value) {
        if($value!='001') {
            $where .= ' AND ' . $key . '="' . $value . '"';
        }
     }
     $where = substr($where,4);//get rid of left 'AND'
     $sql = 'SELECT * FROM my_table WHERE ' . $where . ' ORDER BY id ASC';
 ?>
</html>
0 голосов
/ 13 октября 2009
$url = $_SERVER['SCRIPT_NAME'] . '?';

foreach ($_GET as $key => $value)
{
    $url .= $key . '=' . $value . '&';
}
0 голосов
/ 13 октября 2009

для html почему вы не помещаете метод формы в GET .. и отправляете форму с помощью AJAX. Почему вас беспокоят значения по умолчанию?

Вы можете проверить на стороне php и решить, что фильтры ведьмы активны

$price = (isset($_GET['price'])) ? $_GET['price'] : false;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...