Изменить относительные пути ссылок для включенного содержимого в PHP - PullRequest
1 голос
/ 24 февраля 2009

У меня есть файл PHP в корне моего сервера .. index.php .. который include s .. DIR / main.php

Сейчас .. DIR / main.php .. имеет относительные ссылки на многие близлежащие файлы.

Все относительные ссылки не работают.


Как я могу изменить базовый путь относительного URL для ссылок?

... поэтому включенное содержимое DIR / main.php имеет все ссылки на friend1.php , измененные на DIR / friend1.php .


Редактировать: Это НЕ о включаемых, это о ИЗМЕНЕНИИ массовых ссылок Ahref.

Ответы [ 3 ]

2 голосов
/ 24 февраля 2009

Предполагая, что main.php представляет собой смесь HTML и PHP, тогда, когда вы выводите ссылку, вам необходимо включить префикс:

<a href="<?php echo $web_root; ?>relative/path/">relative link</a>

Где $ web_root - ваш корневой путь ('DIR'). Вероятно, это хорошая идея, чтобы определить его в отдельном включаемом файле, поэтому вам нужно определить его только один раз для всех ваших сценариев.

2 голосов
/ 24 февраля 2009

Тег base в html работает для относительных ссылок. См. w3schools для примера того, как его использовать.

1 голос
/ 24 февраля 2009

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

Для вашего примера вы можете создать символическую ссылку DIR / friend1.php, которая указывает на /friend1.php, но вам придется сделать это для всех ваших файлов или просто переместить их.

...