Я разрабатываю приложение PHP для управления заказами для компании. Чтобы просмотреть заказ, URL-адрес в настоящее время / orders / view / 3502
.
Я не хочу, чтобы номер идентификатора заказа отображался в URL-адресе, поэтому я использовал библиотеку шифрования CodeIgniter для шифрования идентификатора в URL-адресе. URL-адрес (после шифрования) выглядит как / orders / view / AaffGdQQ
.
Проблема, с которой я сталкиваюсь, иногда заключается в том, что зашифрованный идентификатор содержит косую черту или знак плюса, которые работают неправильно, когда в URL. CodeIgniter считывает URL-адрес на основе косой черты, поэтому, если в зашифрованном идентификаторе есть косая черта, он считал бы это двумя переменными, а не одной. Кроме того, знаки плюса интерпретируются как пробелы в URL-адресах.
Итак, у меня вопрос: как я могу зашифровать идентификатор и убедиться, что строка не содержит знака плюса или косой черты?
РЕДАКТИРОВАТЬ: У меня был Идея проверить, содержит ли зашифрованный идентификатор косую черту или знак плюса, и, если да, зашифровать его снова. По какой-то причине каждый раз, когда идентификатор шифруется, он меняется, поэтому это сработает.