2011-05-12 217 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