Эхо SQL-запроса на новой странице с помощью PHP
Вопрос
Я знаю, что это, вероятно, действительно любительский вопрос, но я не могу в этом разобраться и мало что знаю о PHP или MySQL.
Итак, у меня есть очень простой скрипт, который позволяет пользователю отправить пару строк текста и свой почтовый индекс, затем записать его в базу данных и вернуть результаты на сайт.По сути, это ящик для криков.
Мой клиент хочет, чтобы пользователи могли фильтровать результаты по почтовому индексу.Итак, у меня все настроено, и у меня есть вход для поиска, где люди вводят свой почтовый индекс, выполняют поиск, а затем PHP возвращает материалы из этого почтового индекса.
Хотя я могу заставить результаты отображаться сами по себе, отраженными в PHP-скрипте, как мне заставить их отображаться в указанном div на сайте?По сути, я хочу, чтобы он хранил переменную, почтовый индекс, по которому пользователь выполняет поиск, а затем использовал ее после обновления страницы для отображения обновленного списка, который отфильтровывает результаты, отличные от этого почтового индекса.
Большое спасибо за помощь.
Крис
Решение
Не вдаваясь в переписывание и т.д.:
При перенаправлении страницы добавьте запрос в конце это почтовый индекс, гарантирующий, что вы не отправляете пробелы и что у вас есть ввод в заданный формат:
search.php?zipcode=90210
Затем на странице результатов поиска принести переменная передана и работает как обычно:
$zipcode = $_GET['zipcode'];
убедитесь, что почтовый индекс правильно экранирован и фильтрованный для гадостей.
Другие советы
Сделайте 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>
Хорошо, я понял это.Я просто сохранил свой ответ в переменной SESSION, чтобы иметь возможность вызывать его в других файлах PHP.
Теперь у меня есть один файл, обрабатывающий запрос, создающий сессию и переменную, а затем перенаправляющий страницу.Затем на страницу включен PHP, который захватывает переменную SESSION и подключает ее к моему mysql_query, чтобы вернуть правильный результат!
Не уверен, что это лучший способ сделать это, но он работает....Если кто-нибудь знает более элегантное решение, мне бы хотелось его узнать.
Спасибо, Крис
Я предлагаю тебе сделать что-нибудь обучающие программы об использовании 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);
?>