2011-05-12 30 views
2

我試圖根據隨機數被選中隨機更改標題圖像。這是我現在的代碼,它需要整個標籤。生成一個隨機數並添加到一個HTML參數的字符串

<img src="http://www.example.com/site_gfx/headers/header_<?php echo(rand(1,7)); ?>.png" width="980" height="230" alt="Example Site" /> 

是否有任何理由它會死? <?php echo部分是我用來生成隨機數的PHP代碼,並且我希望將其包含在img src的字符串中

+3

它是如何死亡? – Ben 2011-05-12 23:46:37

+0

是照片的延伸.png或.PNG?如果區分大小寫,可以有所作爲。 – robx 2011-05-12 23:54:46

+0

這是一個PHP頁面嗎?它是否以.php結尾? – powtac 2011-05-12 23:59:57

回答

1

想通了。問題是我沒有意識到<?php區域正在運行一個echo命令(我的愚蠢的小疏忽)。但修改我正在處理的echo聲明修復了它。

感謝大家的指點。

1

它是如何臨死的?我想嘗試printecho沒有括號,因爲我還沒有看到echo()之前使用:

打印()

<?php print(rand(1,7)); ?> 

呼應

<?php echo rand(1,7); ?> 
+0

打印和回聲沒有區別只是吐出一些簡單的文字。至少不是以我的經驗。 – robx 2011-05-12 23:53:26

+0

'print'也不是一個函數,而是一個結構體,所以沒有括號的'print X;'是'更好的'。 – Rudie 2011-05-12 23:53:43

0

任何理由你想用PHP來做到這一點,它可能會更容易與JavaScript。嘗試從架上取下蘭特(1,7),以便有:

回聲蘭特(1,7)

+0

如何? PHP是跨瀏覽器最多的,因爲它與瀏覽器無關。 – Blender 2011-05-12 23:53:23

+0

JavaScript不是一個選項,我試圖避免非PHP腳本。 – 2011-05-13 00:01:27

0

這將是有這樣做

<?php 
$number = rand(1,7); 
echo '<img src="http://www.example.com/site_gfx/headers/header_' . $number . 'png" width="980" height="230" alt="Example Site" />' 
?> 

一個更好的辦法可能是在另一個標籤內使用<?php標籤的問題。

+0

不需要(實際上不應該)在單引號內跳出雙引號。這將完全呈現爲\「 – 2011-05-13 00:44:36

+0

@EvilPheonix他在回答中有一個開放的PHP標籤'<?php',但沒有逃脫它,所以SO從它的答案內容中剝離它(以及其後的所有內容)。 – 2011-05-13 00:47:09

+0

@Tieson T.好的一點,我的錯誤,雙引號的轉義字符應該被刪除。 – Jordonias 2011-05-13 00:51:45

相關問題