问题/原因:
因为这条线
// random number 1 - 100 $result_random = rand(1, 100);
被注释掉,
这条线
if($result_random <= 70){
这条线
else if($result_random <= 90){
会导致错误Undefined Variable $result_random in line X
你的代码@ Codepad.org/saPRtKPU
(更新:好的,您没有收到任何错误,但由于$result_random
未定义,因此每次只执行最后一个(else
ads3)案例。任何未定义的变量都包含值http://codepad.org/vVHMrWkl)NULL
解决方案:
更改此行
// random number 1 - 100 $result_random = rand(1, 100);
至
// random number 1 - 100
$result_random = rand(1, 100);
即在之前插入换行符/回车符(Enter在 Windows 中)$result_random....
它应该可以解决问题,但如果现在,请发布您收到的确切错误消息。
顺便说一句,您的所有三个脚本 SRC 都是相同的,即http://myads.com/
. 我想这只是一个例子,但即便如此,在测试时,我们也不知道我们是否得到了真正的随机结果。因此,我已将ad1
,附加到相应的 URL 中。ad2
ad3
完整代码:
<?php
// random number 1 - 100
$result_random = rand(1, 100);
// if result less than or equal 70, display ad1 (70%)
if($result_random <= 70){
echo "<script type='text/javascript' src='http://myads.com/ad1'></script>";
} // if result less than or equal 90, display ad2 (20%)
else if($result_random <= 90){
echo "<script type='text/javascript' src='http://myads.com/ad2'></script>";
}// if result less than or equal 100, display ad3 (10%)
else {
echo "<script type='text/javascript' src='http://myads.com/ad3'></script>";
}
//Just for testing
echo "\r\nRandom Number is: ".$result_random;
现场演示@Codepad.org http://codepad.org/oymuBk8w