Я делаю сайт на PHP и сталкиваюсь с проблемой, когда, если я включаю файл head.php из файла в другой каталог, он не может найти мой логотип. Я попробовал, включая два изображения, которые работали. У меня было изображение ошибки файла рядом с логотипом, так как только одно из изображений находится в правильном месте. Кто-нибудь знает, как я могу это исправить?
код head.php
<div id="head">
<div id="inner_head">
<div id="logo">
<img src="images/logo.png">
</div>
<div id="search">
<form action='search/search.php' method='get'>
<div id="search_feild">
<input type="text" name="input">
</div>
<div id="search_submit">
<input type="submit" VALUE="" /><div id="results"></div>
</div>
</form>
</div>
<a href="user/login.php">
<div id="login_head">
Login
</div>
</a>
<div id="nav">
<ul>
<li>Home</li>
<div class="nav_mid"></div>
<li>About</li>
<div class="nav_mid"></div>
<li>Teachers</li>
<div class="nav_mid"></div>
<li>Links</li>
<div class="nav_mid"></div>
<li>Links</li>
<div class="nav_mid"></div>
<li>Art</li>
<div class="nav_mid"></div>
<li>Subjects</li>
<div class="nav_mid"></div>
<li>Downloads</li>
<div class="nav_mid"></div>
<li>Media</li>
<div class="nav_mid"></div>
<li>Contact</li>
</ul>
</div>
</div>
</div>
Это не хорошая идея загрузить 2 изображения для решения проблемы, но, я думаю, вы можете использовать это:
$logo_1 = "logo 1 path";
$logo_2 = "logo 2 path";
if (file_exists($logo_1))
{
echo '<img src="$logo_1" />';
}
elseif (file_exists($logo_2))
{
echo '<img src="$logo_2" />';
}
Вероятно, вы сталкиваетесь с проблемами относительного пути. Поскольку файл, который вы альтернативно называете головкой, ссылается на ресурсы по его относительному пути, новый путь теперь некорректен.
- index.php
- head.php
- каталог
---- file.php (включает head.php), любые ссылки теперь на 1 каталог глубже и теперь неверны
Чтобы решить эту проблему, полностью обслуживайте все активы, чтобы избежать конфликтов. <img src="<?php include $_SERVER['DOCUMENT_ROOT']. "/project-name/images/logo.png";?>"/>
Вы должны просто создать символическую ссылку на файл изображения во втором месте. Тогда вам нужно только беспокоиться об обновлении одного файла.
ln -s /myoriginalsite/images/logo.php /myothersite/images/logo.php
Теперь вам просто нужно обновить /myoriginalsite/images/logo.php, и оба изменится.
Не требуется PHP-код.
head.php
где вы пытаетесь связатьhead.php
.