2013-07-22 54 views
0

我一直在試圖製作一個按鈕,該按鈕一旦用鼠標滾動就會更改爲不同的圖像,但回顯命令中的代碼已導致某些併發症。這是PHP代碼中,我試圖使用,否則只顯示當onmouse功能被刪除的圖像:在php echo語句中的img標籤中使用onmouseover時出錯

if ($pg > 0) { echo ('<div class="next"><a href="?pg='.($pg-1).'"><img src="/images/prevpage.gif" onmouseover="this.src='/images/prevpagehl.gif';" onmouseout="this.src='/images/prevpage.gif';"/></a></div>'); } 

使用此代碼將導致以下錯誤出現:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/wintblxq/public_html/index.php on line 145

是否有任何我可以修改語法以使其正常工作,還是需要嘗試新的方法?

回答

2

你需要逃避你的引號(你的蜱實際上):

if ($pg > 0) { 
    echo '<div class="next"><a href="?pg='.($pg-1).'"><img src="/images/prevpage.gif" onmouseover="this.src=\'/images/prevpagehl.gif\';" onmouseout="this.src=\'/images/prevpage.gif\';"/></a></div>'; 
} 
+0

這工作完美,謝謝 – durrgh

1

你需要逃脫單引號中onmouseoveronmouseout的javascript:

if ($pg > 0) 
{ 
    echo ('<div class="next"><a href="?pg='.($pg-1).'"><img src="/images/prevpage.gif" onmouseover="this.src=\'/images/prevpagehl.gif\';" onmouseout="this.src=\'/images/prevpage.gif\';"/></a></div>'); 
} 

PHP與字符串的結尾混淆這些。

1

首先,您需要用反斜槓例子來逃避單引號:

<?php echo '<p onmouseover="alert(\\'SIngle Quotes\\');">YAY</p>'; 

編寫PHP一個簡單的方法和看到它(在我的意見)是從PHP分離HTML。用你的代碼在這裏是我如何寫它。

<?php if ($pg > 0) { // PHP Scripts ?> 
    <!-- HTML Tags and text --> 
    <div class="next"><a href="?pg=<?php $pg-1 // MORE PHP CODE WITHIN HTML ?>"><img src="/images/prevpage.gif" onmouseover="this.src='/images/prevpagehl.gif';" onmouseout="this.src='/images/prevpage.gif';"/></a></div> 

<?php } ?> 

這樣,您不必擔心會漏掉所有單引號,而且您可以看到它更好。

+0

謝謝,我仍然試圖使用HTML標籤與PHP標籤的這個掛鉤,這有助於我很多。 – durrgh