2012-11-02 17 views
0

我試圖讓我可以從每次有新的cookie設置或每次用戶登錄和註銷時在文件夾中選擇約100個圖像顯示5個圖像。我已經嘗試使用JavaScript來顯示基於星期幾的不同圖像,但是我真正想要的是一種可以一次顯示5張圖像的方式,並且每次用戶登錄和註銷時都會更改附加鏈接。有人可以指向我的寫作方向,我是PHP的新手,所以即使是最小的代碼示例也會有所幫助,謝謝。每個cookie或每個會話顯示隨機圖像和鏈接?

繼承人我的JavaScript代碼,顯示基於一天的圖像,我不知道這可能會有幫助嗎?

<script type="text/javascript" language="JavaScript"> 
var now = new Date(); 
var day = now.getDay(); 
//the week begins on SUNDAY 
if(day == 0) document.write("<p><a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad0.png' alt='sunday' width='180' height='180' border='0'></a></p><p><a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad0.png' alt='sunday' width='180' height='180' border='0'></a></p>"); 
if(day == 1) document.write("<a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad1.png' alt='monday' width='180' height='180' border='0'></a>"); 
if(day == 2) document.write("<a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad2.png' alt='tuesday' width='180' height='180' border='0'></a>"); 
if(day == 3) document.write("<a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad3.png' alt='wednesday' width='180' height='180' border='0'></a>"); 
if(day == 4) document.write("<a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad4.png' alt='thursday' width='180' height='180' border='0'></a>"); 
if(day == 5) document.write("<a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad5.png' alt='friday' width='180' height='180' border='0'></a>"); 
if(day == 6) document.write("<a href='YOUR-LINK-HERE'><img src='../PTB1/data/adverts/ad6.png' alt='saturday' width='180' height='180' border='0'></a>"); 
</script> 
+0

任何運氣還是什麼? – bozdoz

回答

1

如果你想顯示從一組已知圖像的5倍隨機的圖像,這是最好的辦法

$imagepool=array('path1.jpg','path2.jpg', ..... ,'path100.jpg'); 
for($i=0;$i<5;$i++){ 
    $randid=floor(rand(0,100)); 
    echo '<a href="#"><img src="'.$imagepool[$randid].'"></a>'; 
} 

或者,如果你有一個在所有這些圖像的命名方式,它們在順序,你不必定義圖像列表:

for($i=0;$i<5;$i++){ 
    $randid=floor(rand(0,100)); 
    echo '<a href="#"><img src="/path/to/image_'.$randid.'.jpg"></a>'; 
} 
0
<script type="text/javascript" language="JavaScript"> 
var now = new Date(); 
var day = now.getDay(); 
var images = new Array(7); 
var weekday=new Array(7); 
images[0] = '../PTB1/data/adverts/ad0.png'; 
images[1] = '../PTB1/data/adverts/ad1.png'; 
images[2] = '../PTB1/data/adverts/ad2.png'; 
images[3] = '../PTB1/data/adverts/ad3.png'; 
images[4] = '../PTB1/data/adverts/ad4.png'; 
images[5] = '../PTB1/data/adverts/ad5.png'; 
images[6] = '../PTB1/data/adverts/ad6.png'; 
weekday[0]="Sunday"; 
weekday[1]="Monday"; 
weekday[2]="Tuesday"; 
weekday[3]="Wednesday"; 
weekday[4]="Thursday"; 
weekday[5]="Friday"; 
weekday[6]="Saturday"; 
document.write("<p><a href='YOUR-LINK-HERE'><img src='"+images[day]+"' alt='"+weekday[day]+"' width='180' height='180' border='0'></a></p>"); 
</script> 
0

我認爲你可以在PHP中完成五個環節/圖像O,使用date()strtotime()

<?php 
$today = strtotime("today"); 
$today = date('w',$today); 
if ($today==0) echo '<a...><img.../></a>'; 
if ($today==1) echo '<a...><img.../></a>'; 
//etc... 

如果你想它是隨機的,我敢肯定,你可以在登錄後,將持有五張爲變量設置PHP中的$_SESSION變量。如果他們註銷並重新登錄,變量將會改變,並且您將擁有五個新圖像/鏈接(無論您在尋找什麼)。

以下是您可以做的事情。辦理登錄創建變量的PHP文件,一個PHP文件:

<?php 
    //variables page 
    $your_link_array = array("GOOGLE" => "http://www.google.com","Stackoverflow" => "http://www.stackoverflow.com", "Youtube" => "http://www.youtube.com"); //three as an example, but you should make a lot if you want to pull five each time. 
    ?> 

    <?php 
    //log in page 

    if($login=='success'){ //check username/password etc. 
     session_start(); //log in successful 
     $_SESSION['links'] = array_rand($your_link_array, 5); //pull 5 random variables from your array of links 
    } 
    ?> 

    <?php 
    //any other page that has session_start() at the beginning: 
    session_start() 
    foreach($_SESSION['links'] as $k => $v){ // show the five random links 
     echo '<a href="'.$k.'" />'.$v.'</a>'; 
    } 
    ?> 

其他資源:array_randforeach