Зашифрованные данные в URL-адресах

Я разрабатываю приложение PHP для управления заказами для компании. Чтобы просмотреть заказ, URL-адрес в настоящее время / orders / view / 3502 .

Я не хочу, чтобы номер идентификатора заказа отображался в URL-адресе, поэтому я использовал библиотеку шифрования CodeIgniter для шифрования идентификатора в URL-адресе. URL-адрес (после шифрования) выглядит как / orders / view / AaffGdQQ .

Проблема, с которой я сталкиваюсь, иногда заключается в том, что зашифрованный идентификатор содержит косую черту или знак плюса, которые работают неправильно, когда в URL. CodeIgniter считывает URL-адрес на основе косой черты, поэтому, если в зашифрованном идентификаторе есть косая черта, он считал бы это двумя переменными, а не одной. Кроме того, знаки плюса интерпретируются как пробелы в URL-адресах.

Итак, у меня вопрос: как я могу зашифровать идентификатор и убедиться, что строка не содержит знака плюса или косой черты?

РЕДАКТИРОВАТЬ: У меня был Идея проверить, содержит ли зашифрованный идентификатор косую черту или знак плюса, и, если да, зашифровать его снова. По какой-то причине каждый раз, когда идентификатор шифруется, он меняется, поэтому это сработает.

5
задан Rocket Hazmat 3 December 2010 в 17:08
поделиться