diff --git a/bp-activity/bp-activity-classes.php b/bp-activity/bp-activity-classes.php
index aedea6b..0ffc7a9 100644
--- a/bp-activity/bp-activity-classes.php
+++ b/bp-activity/bp-activity-classes.php
@@ -172,8 +172,7 @@ class BP_Activity_Activity {
 
 		// Searching
 		if ( $search_terms ) {
-			$search_terms = $wpdb->escape( $search_terms );
-			$where_conditions['search_sql'] = "a.content LIKE '%%" . like_escape( $search_terms ) . "%%'";
+			$where_conditions['search_sql'] = "a.content LIKE '%%" . esc_sql( like_escape( $search_terms ) ) . "%%'";
 		}
 
 		// Filtering
@@ -190,13 +189,13 @@ class BP_Activity_Activity {
 
 		// Exclude specified items
 		if ( !empty( $exclude ) ) {
-			$exclude = implode( ',', wp_parse_id_list( $exclude ) );
+			$exclude = esc_sql( implode( ',', wp_parse_id_list( $exclude ) ) );
 			$where_conditions['exclude'] = "a.id NOT IN ({$exclude})";
 		}
 
 		// The specific ids to which you want to limit the query
 		if ( !empty( $in ) ) {
-			$in = implode( ',', wp_parse_id_list( $in ) );
+			$in = esc_sql( implode( ',', wp_parse_id_list( $in ) ) );
 			$where_conditions['in'] = "a.id IN ({$in})";
 		}
 
@@ -259,7 +258,7 @@ class BP_Activity_Activity {
 					$activity_user_ids[] = $activity->user_id;
 			}
 
-			$activity_user_ids = implode( ',', array_unique( (array) $activity_user_ids ) );
+			$activity_user_ids = esc_sql( implode( ',', array_unique( (array) $activity_user_ids ) ) );
 			if ( !empty( $activity_user_ids ) ) {
 				if ( $names = $wpdb->get_results( "SELECT user_id, value AS user_fullname FROM {$bp->profile->table_name_data} WHERE field_id = 1 AND user_id IN ({$activity_user_ids})" ) ) {
 					foreach ( (array) $names as $name )
@@ -373,10 +372,10 @@ class BP_Activity_Activity {
 			$where_args[] = $wpdb->prepare( "type = %s", $type );
 
 		if ( !empty( $item_id ) )
-			$where_args[] = $wpdb->prepare( "item_id = %s", $item_id );
+			$where_args[] = $wpdb->prepare( "item_id = %d", $item_id );
 
 		if ( !empty( $secondary_item_id ) )
-			$where_args[] = $wpdb->prepare( "secondary_item_id = %s", $secondary_item_id );
+			$where_args[] = $wpdb->prepare( "secondary_item_id = %d", $secondary_item_id );
 
 		if ( !empty( $action ) )
 			$where_args[] = $wpdb->prepare( "action = %s", $action );
@@ -438,10 +437,10 @@ class BP_Activity_Activity {
 			$where_args[] = $wpdb->prepare( "primary_link = %s", $primary_link );
 
 		if ( !empty( $item_id ) )
-			$where_args[] = $wpdb->prepare( "item_id = %s", $item_id );
+			$where_args[] = $wpdb->prepare( "item_id = %d", $item_id );
 
 		if ( !empty( $secondary_item_id ) )
-			$where_args[] = $wpdb->prepare( "secondary_item_id = %s", $secondary_item_id );
+			$where_args[] = $wpdb->prepare( "secondary_item_id = %d", $secondary_item_id );
 
 		if ( !empty( $date_recorded ) )
 			$where_args[] = $wpdb->prepare( "date_recorded = %s", $date_recorded );
@@ -473,22 +472,14 @@ class BP_Activity_Activity {
 	function delete_activity_item_comments( $activity_ids ) {
 		global $bp, $wpdb;
 
-		if ( is_array( $activity_ids ) )
-			$activity_ids = implode ( ',', array_map( 'absint', $activity_ids ) );
-		else
-			$activity_ids = implode ( ',', array_map( 'absint', explode ( ',', $activity_ids ) ) );
-
+		$activity_ids = esc_sql( implode( ',', wp_parse_id_list( $activity_ids ) ) );
 		return $wpdb->query( "DELETE FROM {$bp->activity->table_name} WHERE type = 'activity_comment' AND item_id IN ({$activity_ids})" );
 	}
 
 	function delete_activity_meta_entries( $activity_ids ) {
 		global $bp, $wpdb;
 
-		if ( is_array( $activity_ids ) )
-			$activity_ids = implode ( ',', array_map( 'absint', $activity_ids ) );
-		else
-			$activity_ids = implode ( ',', array_map( 'absint', explode ( ',', $activity_ids ) ) );
-
+		$activity_ids = esc_sql( implode( ',', wp_parse_id_list( $activity_ids ) ) );
 		return $wpdb->query( "DELETE FROM {$bp->activity->table_name_meta} WHERE activity_id IN ({$activity_ids})" );
 	}
 
