ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 816


Ignore:
Timestamp:
Nov 21, 2006, 4:58:03 PM (14 years ago)
Author:
ebihara
Message:

カテゴリに関連付いた日記が存在しない場合は、そのカテゴリ自体を削除するようにした。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/ebihara/dev_2_6/webapp/lib/db/diary.php

    r815 r816  
    106106
    107107/**
     108 * カテゴリを削除する
     109 *
     110 * @param int $c_diary_category_id
     111 */
     112function db_diary_category_delete_category($c_diary_category_id)
     113{
     114    $sql = 'DELETE FROM c_diary_category WHERE c_diary_category_id = ?';
     115    db_query($sql, array($c_diary_category_id));   
     116}
     117/**
    108118 * カテゴリと日記を関連づける
    109119 *
     
    125135function db_diary_category_delete_c_diary_category_diary($c_diary_id)
    126136{
     137    $diary_category_list = db_diary_category_list4c_diary_id($c_diary_id);
     138
    127139    $sql = 'DELETE FROM c_diary_category_diary WHERE c_diary_id = ?';
    128140    db_query($sql, array($c_diary_id));
     141
     142    foreach($diary_category_list as $value) {
     143            $sql = 'SELECT COUNT(*) FROM c_diary_category'.
     144                ' WHERE c_diary_category_id = ?';
     145        $is_diary = (bool)db_get_one($sql, array(intval($c_diary_category_id)));
     146        if (!$is_diary) {  //カテゴリに関連付いた日記が存在しない
     147            db_diary_category_delete_category($value['c_diary_category_id']);
     148        }
     149    }
    129150}
    130151
Note: See TracChangeset for help on using the changeset viewer.