Ticket #2373 (closed defect: fixed)

Opened 2 years ago

Last modified 2 years ago

BIZで使用されている画像を管理画面から削除するとユーザ画面で画像がリンク切れの状態になる

Reported by: kiwa Assigned to: shingo
Priority: minor Milestone: OpenPNE2.12.4
Component: pne-biz Version: 2.10.x & 2.12.x & 2.14.x
Keywords: OpenPNE2.10.10 OpenPNE2.13.3 Cc:

Description (Last modified by shingo)

■現象

BIZで使用している画像(グループ画像・施設画像)を管理画面(admin_page_list_c_image / admin_page_edit_c_image)から削除すると、ユーザ画面から確認したときに画像がNoImage?ではなく画像がリンク切れした状態で表示される

■原因

管理画面からの削除実行時、画像データがデータベースの画像テーブル(c_image)からは削除されているがグループテーブル(biz_group)・施設テーブル(biz_shisetsu)からは削除されていない為。

■修正内容

管理画面からの削除実行時、画像データをグループテーブル(biz_group)・施設テーブル(biz_shisetsu)から削除するように修正。 biz_group・biz_shisetsuのimage_filenameに0がinsertされているのを(空文字列)に変更。

■関連情報

Change History

05/15/08 18:14:44 changed by ogawa

  • version changed from 2.8.x & 2.10.x & 2.11.x to 2.10.x & 2.12.x & 2.13.x.

09/05/08 19:21:11 changed by ebihara

  • keywords set to OpenPNE2.10.10 OpenPNE2.13.3.
  • milestone set to OpenPNE2.12.4.

09/09/08 10:24:51 changed by shingo

  • owner changed from nobody to shingo.
  • status changed from new to assigned.

修正します。

09/09/08 11:44:43 changed by shingo

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 to OpenPNE2.10.10 OpenPNE2.13.3 確認中.
  • description changed.

以下のリビジョンで修正しました。ご確認ください。

09/09/08 11:45:39 changed by shingo

修正リビジョンの追加です。

(follow-up: ↓ 7 ) 09/11/08 14:09:09 changed by ebihara

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 確認中 to OpenPNE2.10.10 OpenPNE2.13.3 差し戻し.

biz_shisetsu にも image_filename が存在しますが、こちらについても削除の必要があるのではないでしょうか。

mysql> DESC biz_shisetsu;
+-----------------+---------+------+-----+---------+----------------+
| Field           | Type    | Null | Key | Default | Extra          |
+-----------------+---------+------+-----+---------+----------------+
| biz_shisetsu_id | int(11) | NO   | PRI | NULL    | auto_increment | 
| name            | text    | NO   |     | NULL    |                | 
| image_filename  | text    | NO   |     | NULL    |                | 
| info            | text    | NO   |     | NULL    |                | 
+-----------------+---------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

また PHP においては、特別な事情(変数の展開を文字列内でおこなう必要がある・可読性が著しく低下するなど)がない限り文字列をダブルクオートではなくシングルクオートで囲むことをお勧めします。

(in reply to: ↑ 6 ) 09/11/08 14:10:46 changed by ebihara

Replying to ebihara:

また PHP においては、特別な事情(変数の展開を文字列内でおこなう必要がある・可読性が著しく低下するなど)がない限り文字列をダブルクオートではなくシングルクオートで囲むことをお勧めします。

失礼しました、この指摘は別のチケットについてのものでした。

09/11/08 15:23:41 changed by shingo

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 差し戻し to OpenPNE2.10.10 OpenPNE2.13.3 確認中.

以下のリビジョンで修正しました。ご確認ください。

→「ダブルクオート・シングルクオート」の件   了解です。以後気をつけます。

09/11/08 16:06:59 changed by ebihara

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 確認中 to OpenPNE2.10.10 OpenPNE2.13.3 差し戻し.
  • これでは、 admin_do_delete_c_image から画像削除をおこなった場合に biz_group や biz_shisetsu の image_filename が空になりません。 db_admin_delete_c_image_link4image_filename() 内で削除処理をおこなうべきです
  • addslashes() は不要ではないでしょうか
  • UPDATE 後の image_filename の値は空文字列にするのが望ましいです
  • biz_group の画像削除処理に対してはコメントを記述しているのに、 biz_shisetsu の画像削除処理についてはコメントを記述していないのはなぜでしょうか
  • Desription を最新の情報に書き換えてください

09/11/08 18:59:55 changed by shingo

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 差し戻し to OpenPNE2.10.10 OpenPNE2.13.3 確認中.
  • description changed.

以下のリビジョンで修正しました。ご確認ください。

(follow-up: ↓ 12 ) 09/11/08 19:21:37 changed by shingo

  • description changed.

◆biz_group・biz_shisetsuのimage_filenameに0がinsertされている

上記のバグを発見しましたので、 以下のリビジョンで修正しました。ご確認ください。

(in reply to: ↑ 11 ) 09/11/08 22:47:58 changed by ebihara

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 確認中 to OpenPNE2.10.10 OpenPNE2.13.3 差し戻し.
  • db_admin_delete_c_image_link4image_filename() 内の他の画像削除処理に従ってください
  • biz_deleteShisetsuImage() と biz_deleteGroupImage() の UPDATE 文で image_filename を 0 にしてしまっています

09/12/08 11:04:10 changed by shingo

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 差し戻し to OpenPNE2.10.10 OpenPNE2.13.3 確認中.

以下のリビジョンで修正しました。ご確認ください。

09/12/08 14:04:04 changed by ebihara

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 確認中 to OpenPNE2.10.10 OpenPNE2.13.3 差し戻し.

ついでなので biz_deleteShisetsuImage() と biz_deleteGroupImage() は db_update() を使う形に変更してください。

09/12/08 14:45:14 changed by shingo

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 差し戻し to OpenPNE2.10.10 OpenPNE2.13.3 確認中.

以下のリビジョンで修正しました。ご確認ください。

09/12/08 16:12:09 changed by ebihara

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 確認中 to OpenPNE2.10.10 OpenPNE2.13.3 テスト待ち.

09/12/08 18:21:37 changed by kiwa

  • keywords changed from OpenPNE2.10.10 OpenPNE2.13.3 テスト待ち to OpenPNE2.10.10 OpenPNE2.13.3.
  • status changed from assigned to closed.
  • resolution set to fixed.

確認しました。問題ありません。