2010-12-04 46 views
2

我是asp.net開發人員
我需要知道剪貼簿在orkut中的工作原理嗎?
我需要在用戶可以回覆對方
高達1000個字符asp.net中留言板/剪貼簿

+1

由於這只是一個帶有NVARCHAR(1000)列的WebForm和SQL數據庫:具體是什麼問題?或者更確切地說(對於我們不使用Orkut,這是絕大多數互聯網):Orkut有哪些具體功能要複製? – 2010-12-05 03:11:58

回答

1

它是一個非常寬泛的問題,所以我的答案都將有限制的應用在範圍相當廣泛,

首先我們需要一個數據庫來包含數據,我不知道還有什麼會進入您的網站,所以讓我們走一個基本的2表模型。您可能需要根據您的要求添加更多字段。

Tables users   ScrapbookPost 
Fields UserID (pk) SBPID (pk) 
     UserName  ToUser (fk) 
     Password  FromUser (fk) 
         PostText 
         CreateDate 

有了這個基本結構,我們可以讓用戶留下對方的剪貼簿帖子

這SQL代碼將檢索一個用戶牆上的所有帖子,其中@userPage是當前的用戶頁面的用戶ID。

Select 
    u.UserName, PostText, CreateDate 
From 
    users u inner join 
    scrapbookpost sb on u.UserID = sb.FromUser 
where 
    sb.ToUser = @userPage 
order by 
    CreateDate desc 

看到兩個用戶之間的對話,將意味着查詢這樣

Select 
    u.UserName, PostText, CreateDate 
From 
    users u inner join 
    scrapbookpost sb on u.UserID = sb.FromUser 
where 
    (ToUser = @userID1 
    and 
    FromUser = @userID2) 
    or 
    (ToUser = @userID2 
    and 
    FromUser = @userID1) 
order by 
    CreateDate desc 

這就是你需要基本的數據結構和查詢! 給用戶一個網頁表格,寫帖子和驗證在服務器端,以確保職位是少於1000個字符,並且不包含像cross site scriptingsql injection

對於自己的剪貼簿頁面的任何髒東西請使用Stored procedures或構建您的手動查詢,然後將結果綁定到ASP Repeater以進行輸出。

爲了美化事情有點,你可以考慮讓他們一些HTML與像this控制或富文本編輯,像this控制格式化。