2010-04-02 26 views
1

我最近設計了一個推介遊戲網站,以便玩轉它。從一個目錄打開txt文件,比較這些值,並輸出PHP中的前15個文件

有一個簡單的MySQL用戶系統與電子郵件驗證。它使用UserCake用戶管理系統。

在此之上我添加了一個php頁面,用戶可以給「受害者」,當他們訪問它時,他們會「感染」,並可以感染其他用戶或「受害者」。此頁面使用GET從URL獲取用戶名。我有一個文件夾,當用戶註冊時創建一個4位數的文件,然後是用戶名。 (ex; 0000Username.txt)所有數字都是相同的,只是如果用戶發現文件夾,他們將無法找到文件。在名稱中還有一個與IPS相同格式的txt文件。 (ex; 0000IPSUsername.txt)訪問文件從url獲取用戶名,然後檢查該用戶名的文本文件是否存在。如果用戶名存在於url中,並且有效用戶打開IPS文件並添加訪問者的IP,則打開用戶文本文件,獲取該值並添加一個值並保存。最後,它說「你被感染了,用戶名已被感染(數量)的人」。或者只是你被感染了。

現在我需要!

我需要在網站上添加高分,這樣人們才能競爭成爲「感染」最多的人。

我想我可以使用readdir來獲取文件列表,並用數組中的值打開它們,但我需要它也從文件名剝離用戶名。如果它最好保存到像「用戶名|值」這樣的文本文件中,因爲那樣我就可以添加html標籤的回聲,並讓它包含我希望它成爲一個頁面的文件。

非常感謝提前。

+1

只是好奇你爲什麼選擇用文件而不是你連接的MySQL數據庫來做到這一點? – 2010-04-02 03:50:08

+0

@St。約翰約翰遜 - 偉大的一點。我在想我自己。無論如何,有些人對他們的瘋狂有一種方法。 – Moshe 2010-04-02 03:56:27

+0

我不熟悉SQL,但現在我已經和PHP混了幾年,並決定看看我能否以這種方式完成它。 – Anon 2010-04-02 04:16:04

回答

0

使用0000Username.txt文件嘗試使用json。

// Get 
$contents = file_get_contents('0000Username.txt'); 
$data = json_decode($contents); // PHP > 5.2.0 


// Put 
$data['username'] = 'Username'; 
$data['infectious'] = $data['infectious'] + 1; 
$contents = json_encode($data); // PHP > 5.2.0 
file_put_contents($contents); 
相關問題