#php #mysql #url
#php #mysql #url
Вопрос:
Итак, у меня есть скрипт, который позволит мне ввести некоторый текст в базу данных с помощью формы ввода, очевидно, в этом тексте могут быть пробелы, затем у меня есть скрипт, который будет извлекать данные в соответствии с этим текстом и повторять текст на странице с другими деталями в его строке.
Моя проблема в том, что мне делать с пробелами, как я могу включить дефисы или знаки плюс в мой запрос данных в соответствии с его строкой, например:
mytext.php?text=Hello-There
И разрешите запросу Select не учитывать дефисы как часть текста (иначе он не будет выбирать строку — должен быть точным)
Как мне это сделать?
Ответ №1:
Если я вас правильно понял, вы можете использовать следующее для запроса
$url = "mytext.php?text =" . urlencode($usrinput);
и затем для обработки запроса вы можете использовать
urldecode($_GET['text']);
Комментарии:
1. Что именно это делает? Также существует проблема с исходным запросом данных при использовании метода: mytext.php?text=Hello There — похоже, что при выполнении запроса к базе данных также учитывается ‘ ‘.
2. Он принимает пользовательский ввод, а затем urlencode() кодирует его в надлежащем формате. Для обработки urldecode() декодирует запрос обратно в обычный текст.
3. @Alex, ты действительно должен использовать POST для этого вместо GET .
4. @Alex — Radu прав, вы должны использовать POST для этого. Это безопасно и может обрабатывать большие строки.
5. Я бы использовал POST, но пользователь должен иметь возможность видеть URL-адрес, я проверю то, что вы сказали, и посмотрю, смогу ли я заставить его работать, большое спасибо 🙂