2010-03-30 61 views
1

我正在爲我的用戶編寫類似電子郵件的東西。我想讓人們選擇字母並刪除所選內容。我該怎麼做?我無法想象我只能用一個MySQL查詢來做到這一點。它甚至有可能嗎?選擇並刪除已選中

+0

我認爲我們需要更多地瞭解您要完成的任務。如果可能的話,更好的描述可能有助於舉例說明。 – 2010-03-30 18:37:31

+0

你可以請你重述一下你的問題嗎?我不明白一個字。 – 2010-03-30 18:37:39

+1

@Pekka:我的基於網頁的電子郵件客戶端,如Gmail/Hotmail /等。但他的問題畢竟太廣泛了。聽起來好像他被扔進了一個深坑,試圖依靠別人來解釋東西和/或爲他工作。 @Donator:我建議一步一步學習所有單獨的概念。首先讓HTML正確。然後CSS。然後JS。然後PHP。然後SQL。然後郵件。然後做數學。 – BalusC 2010-03-30 18:40:14

回答

2

如果通過「選擇」和「刪除」你的意思是SQL命令SELECTDELETE,那麼你不需要同時選擇和刪除。首先運行一個SELECT來顯示電子郵件並允許用戶選擇他們想要刪除的郵件。然後使用電子郵件的ID(通常是隱藏字段)以WHERE id IN (..., ..., ...)運行DELETE。

+0

這絕對是我所需要的。非常感謝你。 ;) – 2010-03-30 18:42:37

+1

我認爲Jesse的評論在這裏值得重申:請記住檢查用戶是否只能刪除自己的電子郵件。不要盲目信任用戶的id列表 - 通過在WHERE子句中添加適當的檢查來強制執行它。 – 2010-03-30 18:52:21

0

需要一個查詢才能列出他們的電子郵件,但是一旦您獲得用戶選擇的唯一標識列表,您就可以對每封電子郵件運行一個刪除查詢。

1

DELETE $table_name WHERE id in ($ids)應該做你的刪除。一槍。所以你需要得到所有的身份證的記錄,即時通訊假設是以某種方式編碼到您的HTML作爲任何元素的ID,類或價值屬性的一部分..

+0

這會起作用,但很難正確參數化該查詢以避免SQL注入問題。如果你走這條路線,一定要清理輸入(確保每個id中的值都是正確的類型),並且不要忘記限制正確用戶的刪除查詢,這樣用戶就不會刪除彼此的電子郵件。 類似於: DELETE FROM Email WHERE Email.id IN($ ids)AND Email.user = $ username – 2010-03-30 18:41:35

+0

Jesse,我會對SELECT做同樣的處理,使用WHERE IN。這是不是一個問題,檢查是否刪除自己的電子郵件或不:) – 2010-03-30 18:46:05