Эхо SQL-запрос на новой странице с PHP - PullRequest
1 голос
/ 30 октября 2009

Я знаю, что это, вероятно, действительно любительский вопрос, но я не могу понять это, и я не знаю много о PHP или MySQL.

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

Мой клиент хочет, чтобы пользователи могли фильтровать результаты по почтовому индексу. Итак, у меня все настроено, и у меня есть поисковый ввод, в котором люди вводят свой почтовый индекс, выполняют поиск, а затем PHP возвращает данные из этого почтового индекса.

Несмотря на то, что я могу показать результаты, отраженные в сценарии PHP, как мне заставить их отображаться в указанном div на сайте? По сути, я хочу сохранить переменную, почтовый индекс, по которой пользователь выполняет поиск, а затем использовать ее после обновления страницы, чтобы отобразить обновленный список, отфильтровывающий результаты, не принадлежащие этому почтовому индексу.

Большое спасибо за помощь.

Chris

Ответы [ 4 ]

1 голос
/ 01 ноября 2009

Не вдаваясь в переписывание и т. Д.:

  1. Когда вы перенаправляете свою страницу, добавьте запрос в конце его, который является почтовым индексом, который гарантирует, что вы не отправляете пробелы и что у вас есть ввод в данный формат :

    search.php? Почтовый индекс = 90210

  2. Затем на странице результатов поиска извлечь переданная переменная и работать как обычно:

    $ zipcode = $ _GET ['zipcode'];

  3. убедитесь, что почтовый индекс правильно экранирован и отфильтрован для негодяев.

0 голосов
/ 30 октября 2009

ОК, я понял это. Я просто сохранил свой ответ в переменной SESSION, чтобы я мог вызывать его в других моих PHP-файлах.

Теперь у меня есть один файл, обрабатывающий запрос, создающий сеанс и переменную, а затем перенаправляющий страницу. Затем я включил PHP на страницу, которая захватывает переменную SESSION и вставляет ее в мой mysql_query для получения правильного результата!

Не уверен, что это лучший способ сделать это, но он работает .... Если кто-нибудь знает о более изящном решении, я бы с удовольствием его узнал.

Спасибо, Chris

0 голосов
/ 30 октября 2009

Я предлагаю вам сделать уроки по использованию PHP и поиску базы данных с помощью mysqli.

<?php

/* Connect to a MySQL server */
$link = mysqli_connect(
            'localhost',  /* The host to connect to */
            'user',       /* The user to connect as */
            'password',   /* The password to use */
            'world');     /* The default database to query */

if (!$link) {
   printf("Can't connect to MySQL Server. Errorcode: %s\n", mysqli_connect_error());
   exit;
}

/* Send a query to the server */
if ($result = mysqli_query($link, 'SELECT Name, Population FROM City ORDER BY Population DESC LIMIT 5')) {

    print("Very large cities are:\n");

    /* Fetch the results of the query */
    while( $row = mysqli_fetch_assoc($result) ){
        printf("%s (%s)\n", $row['Name'], $row['Population']);
    }

    /* Destroy the result set and free the memory used for it */
    mysqli_free_result($result);
}

/* Close the connection */
mysqli_close($link);
?> 
0 голосов
/ 30 октября 2009

Сделать HTML-страницу PHP-страницей (обычно с помощью расширения .php). Замените содержимое целевого div на <?php stuff to get and print results ?>.

Если на веб-сервере установлен и настроен PHP, он будет принимать определенные файлы (обычно заканчивающиеся на .php) и запускать их через интерпретатор PHP. Интерпретатор PHP вызывается каждый раз, когда в документе есть <?php, и он останавливает синтаксический анализ содержимого каждый раз, когда встречает ?> в блоке <?php.

Например, чтобы получить веб-страницу для печати "Hello World!" в div через PHP я бы сделал:

<div><?php print 'Hello World!'; ?></div>

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