Пример #1
0
/**
 * コミュニティ情報取得関連のfunction cacheを削除する
 */
function cache_drop_c_commu($c_commu_id)
{
    $c_commu_id = (int) $c_commu_id;
    pne_cache_drop('db_commu_c_commu4c_commu_id_k', $c_commu_id);
    pne_cache_drop('db_commu_c_commu_member_list_random4c_commu_id', $c_commu_id, 5);
    pne_cache_drop('db_commu_c_commu_member_list4c_commu_id', $c_commu_id, 9);
    pne_cache_drop('db_commu_c_commu4c_commu_id2', $c_commu_id);
    $c_commu_id = (string) $c_commu_id;
    pne_cache_drop('db_commu_c_commu4c_commu_id_k', $c_commu_id);
    pne_cache_drop('db_commu_c_commu_member_list_random4c_commu_id', $c_commu_id, 5);
    pne_cache_drop('db_commu_c_commu_member_list4c_commu_id', $c_commu_id, 9);
    pne_cache_drop('db_commu_c_commu4c_commu_id2', $c_commu_id);
    $c_commu_topic_list = db_commu_new_topic_comment4c_commu_id($c_commu_id, 7);
    $c_commu_event_list = db_commu_new_topic_comment4c_commu_id($c_commu_id, 7, 1);
    $c_commu_bbs_list = array_merge($c_commu_topic_list, $c_commu_event_list);
    foreach ($c_commu_bbs_list as $c_commu_topic_id) {
        $c_commu_topic_id = (int) $c_commu_topic_id;
        cache_drop_c_commu_topic($c_commu_topic_id);
        $c_commu_topic_id = (string) $c_commu_topic_id;
        cache_drop_c_commu_topic($c_commu_topic_id);
    }
    $c_commu_member_total_num = db_commu_count_c_commu_member_list4c_commu_id($c_commu_id);
    $c_commu_member_list = db_commu_c_member_list4c_commu_id($c_commu_id, 1, $c_commu_member_total_num);
    foreach ($c_commu_member_list[0] as $c_member) {
        cache_drop_c_commu_list4c_member_id($c_member['c_member_id']);
    }
}
Пример #2
0
/**
 * コミュニティからメンバーを削除
 */
function db_commu_delete_c_commu_member($c_commu_id, $c_member_id)
{
    //function cache削除
    cache_drop_c_commu($c_commu_id);
    cache_drop_c_commu_list4c_member_id($c_member_id);
    //おすすめレビューを削除
    $sql = 'DELETE FROM c_commu_review' . ' WHERE c_commu_id = ? AND c_member_id = ?';
    $params = array(intval($c_commu_id), intval($c_member_id));
    db_query($sql, $params);
    //副管理者なら副管理者のポストを空に
    $sql = 'UPDATE c_commu' . ' SET c_member_id_sub_admin = 0' . ' WHERE c_commu_id = ? AND c_member_id_sub_admin = ?';
    db_query($sql, $params);
    //管理者承認依頼
    $sql = 'DELETE FROM c_commu_admin_confirm' . ' WHERE c_commu_id = ? AND c_member_id_to = ?';
    db_query($sql, $params);
    //副管理者承認依頼
    $sql = 'DELETE FROM c_commu_sub_admin_confirm' . ' WHERE c_commu_id = ? AND c_member_id_to = ?';
    db_query($sql, $params);
    //参加イベント情報削除
    $sql = 'SELECT ct.c_commu_topic_id' . ' FROM c_commu_topic ct' . ' LEFT JOIN c_event_member cem ON ct.c_commu_topic_id = cem.c_commu_topic_id' . ' WHERE ct.c_commu_id = ?' . ' AND cem.c_member_id = ?';
    $c_commu_topic_id_list = db_get_col($sql, $params, 'main');
    foreach ($c_commu_topic_id_list as $c_commu_topic_id) {
        db_commu_delete_c_event_member($c_commu_topic_id, $c_member_id);
    }
    //コミュニティから退会
    $sql = 'DELETE FROM c_commu_member' . ' WHERE c_commu_id = ? AND c_member_id = ?';
    db_query($sql, $params);
}