Плохая идея иметь два уникальных идентификатора в таблице базы данных? - PullRequest
2 голосов
/ 04 июня 2009

Я хочу, чтобы пользователи могли просматривать записи из моей базы данных, следуя URL.

Я предполагаю, что не очень хорошая идея иметь такого рода URL, где идентификатором просматриваемой записи является идентификатор автоинкремента записи!

http://www.example.com/$db_record_id

Вышеизложенное дает ненужную информацию. Это правда? Не создаст ли мой собственный идентификатор для каждой строки одну и ту же проблему?

Есть ли лучший способ решить мою проблему.

Среда: LAMP (PHP)

Спасибо всем

Ответы [ 12 ]

0 голосов
/ 04 июня 2009

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

Если бы никто не наблюдал за страницами, у меня все равно не было бы с этим проблем. Потому что, если бы это было так, вы все равно должны пройти проверку авторизации, которая помешает им увидеть страницы, которые им не разрешено видеть.

0 голосов
/ 04 июня 2009

Это не очень хорошая идея, так как это уже было сказано (вы фактически выставляете каждую строку в таблице), и я не думаю, что это необходимо.

Я думаю, что пользователи перейдут на эту страницу после определенного сценария (выбора элемента из списка или чего-либо еще), поэтому у вас будет отправка страницы и контроллер (если вы пытаетесь использовать архитектуру MVC), который обработает любую необходимую обработку и отправит на страницу просмотра, которая может быть просто www.yoursite.com/displayElement.htm

Таким образом, идентификатор просто передается как переменная сеанса и нигде не отображается.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...