Я делаю приложение для видеоигр, которое позволяет пользователям @ упоминать видеоигру, которая хранится в базе данных. Он работает аналогично тому, как вы можете @ упоминать пользователей в Twitter, или @ упоминать что-либо на Facebook.
Когда пользователь вводит комментарий «@», JavaScript запускает раскрывающийся список. Пользователь выбирает игру из раскрывающегося списка, и когда он ее выбирает, он переходит в текстовое поле. Внутренне строка сохраняется в формате @ [id: Название игры], который является форматом, который я составил. Итак, если я хочу @ упомянуть «Super Mario Bros.» в комментарии, который я делаю, строка, хранящаяся внутри (и отправленная в базу данных), будет:
@[6816:Super Mario Bros.] is a great game!
Этот формат позволяет приложению узнать, что идентификатор игры – 6816, и что игра «Super Mario Bros.».
Когда комментарий отображается позже, он должен быть в формате HTML, чтобы пользователь мог щелкнуть по ссылке на игру, если захочет. Как использовать PHP для преобразования этой необработанной строки в формат HTML, например:
<a href="/games/6816">Super Mario Bros.</a> is a great game!
Я попробовал несколько решений, но ни один из них не работает. Я не уверен, что лучшее решение – использовать регулярные выражения или другое решение. Имейте в виду, что пользователь может @ упомянуть столько игр, сколько он того хочет!