PHP: написать функцию, которая указывает на другую ссылку, если пользователь находится на определенной странице - PullRequest
0 голосов
/ 07 мая 2019

Я довольно новичок в PHP.У меня небольшая проблема с приложением, над которым я работаю.У меня очень простой заголовок для приложения, который отображается на всех страницах.Вот мой код для этого:

Заголовок

function writeHeader($profile) {
    <a href="update_profile">Update Profile</a>
}

Цель заголовка - направить пользователя на его страницу "Обновление профиля".Таким образом, заголовок прекрасно работает, если пользователь находится на странице индекса (потому что маршрут просто «update_profile»).Но у меня есть несколько подстраниц в моем приложении, они структурированы примерно так:

-index.phtml
-characters/create.phtml
-characters/edit.phtml
-worlds/create.phtml
-worlds/edit.phtml
-etc.

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

Я подумал о написании совершенно новых функций только для того, чтобы писать заголовки специально для этих страниц, но мне интересно, есть ли способ просто обновить функцию, которая у меня есть сейчас, чтобы изменить маршрут, если пользователь перемещается кСтраница «Обновить профиль» из любой точки, кроме индекса.Кто-нибудь может дать какие-либо предложения, как это сделать?

Ответы [ 2 ]

0 голосов
/ 07 мая 2019

Вы можете сделать что-то вроде:

    $base_url = 'http://localhost.com/';

    function writeHeader($profile){ 
       echo '<a href="'.$base_url.'update_profile">Update Profile</a>';
    }
0 голосов
/ 07 мая 2019

Вы должны быть как можно ближе к тому, что вы получите в производстве. Это означает, что вам не нужно ориентироваться на локальный хост, а на домен. Для этого вам нужно создать виртуальный хост в вашем файле http.conf и нацелиться на него. Таким образом, вы сможете использовать абсолютный путь, как сказал Ник, и он будет таким же, как только ваше приложение будет развернуто.

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