У меня есть сайт для объявлений.Зачем использовать метод POST здесь?
На главной странице (индексе) У меня есть несколько полей формы, которые пользователь может заполнить или не заполнить, чтобы указать подробный поиск объявлений.
Ex: Действие
Category: Cars
Price from: 3000
Price to: 10000
Color: Red
Area: California
Формы устанавливается на страницу PHP:
<form action='query_sql.php' method='post'>
В query_sql.php Принести переменные, как это:
category=$_POST['category'];
etc etc...
Тогда запрос MySql:
$query="SELECT........WHERE category='$category' etc etc....
$results = mysql_query($query);
Затем я просто показываю результаты запроса пользователю, создавая таблицу, которая динамически заполняется в зависимости от набора результатов.
Однако, согласно ответу полковника шрапнелью в моем предыдущем квартале не должны использовать POST здесь: How to hide URL from users when submitting this form?
причина, почему я использовать пост просто, чтобы скрыть «один-страниц текстового документа» долго URL в адресной строке браузера.
Я очень смущен, это нормально использовать POST или нет?
Это работает отлично и когда я использую GET или POST сейчас ... А это уже на сервере ...
Btw, в связанном вопросе, я не имею в виду, чтобы сделать URL невидимым (или скрыть его) Я просто хотел, чтобы он тоже выглядел лучше (что я сделал с mod_rewrite).
UPDATE:
Если я использую GET, то как я должен сделать URL лучше выглядит (красиво)? Проверить это предыдущая Q из:
How to make this very long url appear short?
Вы должны использовать параметризованные запросы или, по крайней мере, строку, которая выводит входные данные. Было бы тривиально обрабатывать запрос, который бы скомпрометировал вашу базу данных с кодом, который вы показали. – tvanfosson
Другой способ иметь короткий URL (но не SEO) - это сделать POST, сохранить фильтры поиска в таблице DB, получить идентификатор вставленной записи, а затем перенаправить на страницу, например search.php? Searchid = 123456, которая выполняет Поиск. Таким образом, вы можете иметь короткий URL-адрес, имея много параметров. Остерегайтесь структуры таблицы, если вы измените, какие поля будут искать. – Keeper
** Что не так в длинном URL-адресе **? –