Имя пользователя как ссылка на его профиль.

Shdbd529

Обычный сценарий. Лента с постами, над каждым постом ник автора. Мне нужно понять, как сделать, чтобы при нажатии на ник, сайт переносился на его страницу. Код для отображения данных пользователя уже готов. В нем я нахожу пользователя по id в mysql и вставляю его данные в html разметку, где нужно. А вот как сделать, чтобы этот код узнал код узнал id пользователя , я не понимаю. Может это глупый вопрос и решение простое, но я совсем зеленый и делаю это впервые, пожалуйста подскажите. Если вопрос не до конца ясен, я готов ответить на ваши уточняющие. В хабр qa обращаться уже страшно. Надеюсь тут не такие монстры хд. Спасибо за ответ.

 

Drunkenmunky

А как вы определяете ник автора поста?

 

Shdbd529

У меня специальный столбец в mysql для каждого поста, который хранит id того, кто создал пост. По этому id с помощью sql-запроса и определяю

 

Drunkenmunky

Ну так и вставляйте этот id в ссылку на страницу автора.

 

Shdbd529

У меня ник как тег <input type=»submit»/> прописан
— Добавлено —

И я его как форму обрабатываю. Это не правильно?
— Добавлено —

PHP:
  1. <input type=«submit» value=«‘ . $owname . ‘ ‘ . $owsurname . ‘» class=«author__nick»>

— Добавлено —
$owname и $owsurname я достаю из mysql с помощью id, прикрепленному к посту

 

Drunkenmunky

По-всякому можно.
Можно и в форму.
Проще в ссылку.
Далее получаете ключ=значение из глобального массива.
Значение приводите к типу int, запрашиваете из базы данные по id, если такой есть выводите инфо по пользователю, если нет, то перенаправляете на 404

 

Shdbd529

$owname и $owsurname я достаю из БД

Спасибо большое. Завтра попробую. Сейчас на работу собираюсь. Если вдруг возникнут вопросы, обращусь к вам если вы не против

 

Вероломство

Правильно так

HTML:
  1. <button name=«id» value=«<?= $id ?>«><?= $owname . ‘ ‘ . $owsurname ?></button>
 

miketomlin

Shdbd529

А зачем добавлять id в value?

 

Shdbd529

Аа, все понял. Спасибо большое

 

miketomlin

А что вам значение id не нужно? :)

Если вы думаете, что программирование – это магия, то вы ошиблись с выбором ;)
— Добавлено —
P.S. И выше вроде бы писали, что здесь форма даром не нужна.

 

Shdbd529

А можно как-то скрыть id в разметке?

 

miketomlin

Зачем?
— Добавлено —
Если вам не нравятся именно числовые id (/user/1), используйте слаги (/author/mike). Но это не всегда уместно, например для тех же комментов (/comment/125).
— Добавлено —
Еще один пример: /articles/my-first-article

 

Shdbd529

Можете мне в лс объяснить подробней, как без формы сделать?
— Добавлено —

Вообще не понимаю о чем вы

 

miketomlin

Почему в ЛС? Я вам тут в первом посте все объяснил. А таблицы для последнего примера (/articles/my-first-article) можно найти в конце статьи Как сделать вывод списка статей? Если что-то не понятно, уточняйте прямо в теме.

Серьезно? И что вы тогда поняли насчет того, «зачем добавлять id в value»?
— Добавлено —
«Без формы» – это ссылками. Я вам накидал примеры таких ссылок и даже рассказал, как это делается.

 

Shdbd529

id я добавляю в value тега input=»submit», который находится в форме

 

Drunkenmunky

Давайте пошагово? Нужно определить на каком именно этапе у вас имеет место недопонимание.

Вот есть страница, на которой открываются анкетные данные некоего пользователя.
Так?
Чтобы их открыть, скрипту нужно передать какой-то уникальный идентификатор этого пользователя.
Согласны?
Это может быть например никнейм или числовой ID?
Если здесь всё еще понятно, то выберите что именно нужно передать скрипту.
Далее будем уточнять способ.

 

Вероломство

перестаньте рисовать кнопки тегом input, для кнопок есть тег buttun БЕЗ ВСЯКИХ type=»submit»

 

miketomlin

Зачем? Какова конечная цель использования id?

Кстати, у таких кнопок в value указывается надпись на кнопке. Вы хотите, чтобы на кнопке отображался идентификатор? Это ваша «конечная цель»? :)

И кстати, ничего не смущает?

Нет. Хочу магию. :)

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *