2013-02-28 3 views
0

Я занимаюсь разработкой динамического веб-сайта с использованием PHP. Когда пользователь веб-сайта создает учетную запись, для этого пользователя должна быть создана страница профиля. Скажем, пользователь под названием «dev23» создает учетную запись на моем сайте, его профиль должен быть доступен по ссылке www.mysite.com/dev23создание профиля профиля пользователя

Как мне создать такую ​​вещь? Должен ли я создать стандартную страницу, такую ​​как userprofile.php, которая заполнена данными, специфичными для указанного имени пользователя? Или я должен создать постоянную веб-страницу для каждого пользователя?

Пожалуйста, дайте мне знать правильный подход к этой проблеме.

ответ

1

Возможно, www.mysite.com/dev23 является общедоступным или доступен только для зарегистрированных пользователей?

Если информация доступна только зарегистрированным пользователям, вы можете создать файл myprofile.php, который извлекает пользователя из сеанса и извлекает данные соответствующим образом.

Если он предназначен для URL-адреса, который могут пострадать другие пользователи, возможно, вам нужна какая-то страница userprofile.php с данными, передаваемыми для идентификации пользователя для просмотра. Например, URL может быть www.mysite.com/userprofile.php?user=dev23. Если вы используете Apache для своего веб-сервера, вы можете использовать mod_rewrite, чтобы сделать URL более красивым. Таким образом, у вас может быть URL-адрес www.mysite.com/user/dev23, перенаправленный в userprofile.php? User = dev23, и ваш PHP обрабатывает то же самое. Это всего лишь способ сделать URL-адреса более удобными для пользователя, чем голая строка запроса. Это распространено среди многих систем CMS на основе PHP, таких как WordPress, Joomla и т. Д.

+0

Спасибо Marshmellow. Я думал так же. В настоящее время у меня есть страница myprofile.php, которая извлекает данные, специфичные для пользователя loggedin, но я был смущен об общедоступной странице. Ваш ответ был действительно полезен. – ufdeveloper

1

В идеале вы должны создать один файл, который обрабатывает всех пользователей.

Определенные фреймворки, такие как SkyPHP, позволяют это определять атрибуты после действительной страницы как «запросные папки», которые могут использоваться так же, как и переменные GET/POST.

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

SkyPHP также имеет функциональные возможности, где одно поле в таблице может быть использовано, чтобы вытащить эти данные просто определив страницу, как _table.field_name_

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

Пример ... Если у нас есть таблица под названием категории и поле имени слизняк, можно было бы создать страницу с именем _category.slug_.php

Тогда URL ... http://mydomain.com/watches будет искать "часов "в category.slug и оттяните идентификатор записи как $category_id с $category_slug.

Это решит вашу проблему, если вы готовы дать ей шанс.

Снова обратитесь к документации здесь ... http://switchbreak.com/skyphp

Смежные вопросы