Веб-адрес PHP редирект - PullRequest
       5

Веб-адрес PHP редирект

0 голосов
/ 24 октября 2011

В настоящее время я работаю над веб-сайтом социальной сети и хотел бы, чтобы пользователь мог ввести веб-адрес другого пользователя и быть перенаправлен на его профиль.Дело в том, что у каждого существующего пользователя есть столбец в базе данных mySQL, который указывает, какие шаблоны страниц он использует, и данные, которые будут вводиться в этот шаблон.Как я могу сделать так, чтобы при вводе примера: http://www.emuze.co/users/@bob_marly (после него он мог иметь суффикс .PHP / .HTML), веб-сайт запрашивал базу данных, находил шаблон, перенаправлял на эти шаблоныстраницы (например, http://www.emuze.co/temps/temp1.0.php) и использовать пользователей, которые из базы данных MySQL? Я знаю, что это очень длинный и сложный вопрос, но я был бы очень признателен за любую помощь! Большое спасибо!: @

Ответы [ 2 ]

0 голосов
/ 24 октября 2011

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

Например, у вас будет таблица "templates" со столбцами«UserID», «Имя пользователя» и «Шаблон».Тогда таблица будет выглядеть примерно так:

+--------+----------+----------+
| UserID | Username | Template |
+--------+----------+----------+
|      1 | John     | temp1.0  |
|      2 | Paul     | temp1.1  |
|      3 | Eric     | temp1.0  |
|      4 | Frank    | temp1.2  |
+--------+----------+----------+

... и soforth.

Тогда вам придется запросить, какой шаблон у пользователя.Например, чтобы узнать, какой шаблон использует пользователь с идентификатором пользователя «3», при условии, что ваш ресурс подключения mysql хранится в переменной $ link:

$query = "SELECT * FROM templates WHERE UserID=3";
$result = $link->query($query);
$row = $result->fetch_assoc();

$ row ['Template'] приведет к 'temp1.0 ', который вы могли бы использовать для включения определенной таблицы стилей CSS, в том числе определенных файлов PHP или чего-либо еще, но вы также можете получить всю другую информацию, относящуюся к пользователю, такую ​​как $ row [' Username '].Перенаправления не нужны.

0 голосов
/ 24 октября 2011

Если я правильно понял ваш вопрос, вы имеете в виду следующее:

Итак, пользователь А хочет видеть сайт от пользователя Б. У пользователя A есть шаблон T_A, у пользователя B - шаблон T_B. Пользователь A заходит на www.emuze.co/users/B и просматривает его, используя шаблон T_A.

Если это правильно, сделайте это так: Считайте данные пользователя B из базы данных. Загрузите профиль пользователя watchings, проверьте, какой шаблон он использует, а затем визуализируйте сайт, используя шаблон (в данном акте T_A) и данные пользователя (B).

Очень простой пример:

база данных пользователей:

|Name  | Information       | Template
_______________________________________
|A     |I'm user A         | T_A
|B     |I'm user B         | T_B

Шаблоны: T_a:

   "Hey, I am %NAME%, Some Infos about me: %INFORMATION%"

T_B:

   "Name: $NAME", Information: %INFORMATION"

Пользователь A хочет посмотреть на пользователя B:

Get user B's values from db
Get user A's Template
replace `%NAME%` and `%INFORMATION%`
print it

UPDATE:

Я думаю, что вам нужен какой-то mod_rewrite (под Apache, под IIS используются правила перезаписи), который сопоставляет http://example.com/users/bob_marley с http://example.com/users/index.php?user=bob_marley. Используя это, вы всегда добираетесь до этого сайта и можете делать там что угодно. .

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

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