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

Hallo das img src tatsächlich in einem anderen Verzeichnis ist/imagesimg src nicht mit PHP-Variablen arbeiten

Ich weiß, dass dies wahrscheinlich ist super einfach, aber Ive eine Stunde drauf und nichts ausgegeben. Die Seite funktioniert, zeigt jedoch nicht das Verzeichnis an. Bitte helfen Sie dem Anfänger. Ich nahm die < vor dem a href und img src out nicht die Seitenanzeige

+0

Was sehen Sie, wenn Sie in Ihrem Browser auf "Quelle anzeigen" gehen und dieses Teil der Seite betrachten? Können Sie die src-URL des Img-Tags manuell kopieren und einfügen und in den Browser laden? – alxp

+0

Hier kommt Smarty. :) – Anonymous

+0

BTW: Sie sollten immer htmlspecialchars() verwenden, wenn Sie Text in HTML einfügen, ansonsten z. Zitate im Produktnamen brechen Ihren HTML-Code. – Kornel

Antwort

2

Job # 1 Wenn Sie ein Problem mit Code haben, der HTML erzeugt, sehen Sie sich die Ausgabequelle an und vergleichen Sie sie mit dem, was Sie erwarten. Ich hatte solche Probleme schon früher und sie verschwanden gewöhnlich, als ich aufhörte, über den PHP-Code nachzudenken, und mir die tatsächliche Ausgabe ansah.

Was ist der Inhalt von $ productImg1URL - und wenn die Bilder, auf die verwiesen wird, in der URL start/images/enthalten sind, startet $ productImg1URL. Wenn es nur der Name eines Bildes ist, aber ohne den Pfad - Sie müssen das an Ort und Stelle setzen.

7

Es gibt zwei Möglichkeiten, dies zu tun machen könnte:

Erstens außerhalb eines Codeblocks:

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

Die erste Form heißt short open tag und muss in Ihrer php.ini aktiviert sein, die es fast immer ist.

Oder wenn Sie diese in einem Codeblock tun:

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

Die <<<END ist ein heredoc und ich ziehe es in der Regel eine große Zeichenfolge in doppelten Anführungszeichen zu verwenden, die doppelten Anführungszeichen enthalten erfordert entkommen.