2009-03-28 7 views
0
<a href="'.$productLink.'" alt="'.$productName.'"> 
<img src="'.$productImg1URL.'" alt="'.$productName.' '.$productType.' "> 
</a> 

Здравствуйте IMG SRC на самом деле в другом каталоге/изображенияIMG SRC не будет работать с PHP переменных

Я знаю, что это, вероятно, очень легко, но Ive потратили час на него и ничего. Страница работает, но не показывает каталог. Пожалуйста, помогите новичку. Я вынул < перед A HREF и IMG SRC не может сделать дисплей страницу

+0

Что вы видите, когда идете в «просмотр источника» в своем браузере и просматриваете этот фрагмент страницы? Можете ли вы вручную скопировать и вставить URL-адрес src-тега img и загрузить его в браузере? – alxp

+0

Здесь идет Smarty. :) – Anonymous

+0

BTW: вы всегда должны использовать htmlspecialchars() при вставке текста в HTML, в противном случае, например. цитаты в названии продукта нарушат ваш HTML. – Kornel

ответ

2

Работа № 1, когда у вас есть проблема с кодом, который генерирует HTML, рассматривает исходный источник и сравнивает его с тем, что вы ожидаете. Раньше у меня были такие проблемы, и они обычно исчезали, когда я перестал думать о PHP-коде и посмотрел на фактический результат.

Каково содержание $ productImg1URL - и если изображения, на которые он ссылается, находятся в URL-адресе start/images/- это запускает $ productImg1URL. Если это просто имя изображения, но без пути - вы должны это установить.

7

Есть два способа сделать это:

Во-первых, за пределами блока кода:

<?php 
// code here 
?> 
<a href="<?= $productLink ?>" alt="<?= $productName ?>"> 
<!-- or --> 
<img src="<?echo $productImgURL; ?> alt="<?php echo $productName . ' ' . $productType ?>"> 
</a> 

Первый вид называется short open tag и должен быть включен в вашем php.ini, который он почти всегда есть.

Или, если вы делаете это внутри блока кода:

<?php 
echo <<<END 
<a href="$productLink" alt="$productName"> 
<img src="$productImgLURL" alt="$productName $productType"> 
</a> 
END 

<<<END является heredoc и я обычно предпочитаю его, используя большую строку в двойных кавычках, который требует маскирование, содержащейся в двойные кавычки.