2010-11-18 126 views
0

嗨,我想要做的是將所有5個文件的ID進入會話,所以我可以稍後移動相應的物理文件名。 $ sid會話ID將相同,查詢會提取唯一的$ data [Id]。該限制設置爲5,我該如何確保每個環節從結果中得到一個唯一的數據[ID]如果只有3結果不要用過去的2 ...在多個會話中存儲數據

$results = mysql_query("SELECT * FROM test WHERE Language = '".$lang."' ORDER BY id DESC, CreationDate DESC LIMIT $start, 5"); 

    while ($data = mysql_fetch_array($results)) { 
     $Record_Count = $Record_Count + 1; 

session_start(); 
$sid = session_id(); 

     unset($_SESSION['file_1'], $file_1); 
    $_SESSION['file_1'] = $sid . '-' . $data[Id] . '-slow'; 
     unset($_SESSION['file_2'], $file_2); 
    $_SESSION['file_2'] = $sid . '-' . $data[Id] . '-slow'; 
     unset($_SESSION['file_3'], $file_3); 
    $_SESSION['file_3'] = $sid . '-' . $data[Id] . '-slow'; 
     unset($_SESSION['file_4'], $file_4); 
    $_SESSION['file_4'] = $sid . '-' . $data[Id] . '-slow'; 
     unset($_SESSION['file_5'], $file_5); 
    $_SESSION['file_5'] = $sid . '-' . $data[Id] . '-slow'; 

     } 
+0

你要引用'Id'在'$數據[ID]':'$數據[ '身份證']'。 – Gumbo 2010-11-18 07:24:40

+0

如果我做了下面的例子使用2維數組如:$ _SESSION ['files'] []我怎麼會調用每個條目會簡單的echo $ _SESSION ['files'] [2]工作? – acctman 2010-11-18 08:35:13

回答

1

你可以一次只能運行一個會話。

要確保只有三個結果,請將收集的ID放在數組中並測試其長度。

if(count($collectedIDs) != 3) { $collectedIDs[] = $newID; } 
1

使用2維數組,如:$_SESSION['files'][]

session_start(); 
$sid = session_id(); 
unset($_SESSION['files']); 
$Record_Count = 0; 
while ($data = mysql_fetch_array($results) && $Record_Count < 5) { 
     $Record_Count = $Record_Count + 1; 
     $_SESSION['files'][] = $sid . '-' . $data[Id] . '-slow'; 
} 
+0

我將如何檢索$ _SESSION ['文件']內的所有名稱 我假設它是這樣的東西,但它將不得不循環所有的數組條目...但如何? $ scrtmp = $ _SESSION ['files']; (file_exists($ scrtmp)){copy(「/ temp /」。$ scrtmp,「/ items /」。date(Y)。「/」。date(m)。「/」。$ scrtmp) ; } – acctman 2010-11-18 07:02:49