プロジェクト

全般

プロフィール

Backport(バックポート) #2292

op_preset_birthdayについて、member_profileのvalue_datetimeがゼロ値もしくはnullの場合、プロフィール閲覧時に例外が発生し閲覧できない場合がある

Shingo Yamada12年以上前に追加. 12年以上前に更新.

ステータス:
Fixed(完了)
優先度:
High(高め)
担当者:
対象バージョン:
開始日:
2011-07-25
期日:
進捗率:

100%


説明

Overview (現象)

http://sns.openpne.jp/diary/25790 より転記

お世話様です。
既出や3.6βで解決してたらごめんなさい。

OpenPNE3.52を使ってます。
プロフィールを閲覧不能のメンバーがたまに出てきてphpMyAdminで直して気付いたんですが、生年月日の生まれ年を適当に入れたり全角で入れたりするとこの症状が出ます

リストボックスのように選べるのを限定(沢山有ってダメっすかね?)かチェックをかける事はできますか?

現在サポート中の各バージョンおよびMasterにおいて、チェック(バリデーション)がかかっています。

ただし、旧バージョンからのアップグレード等で、
op_preset_birthdayのmember_profileデータが正しくない場合
(具体的にはvalue_datetimeがゼロ値もしくはvalue_datetimeがnullかつ、valueが日付として認識できない場合)
プロフィール閲覧(member/profile)で「Impossible to parse date "xxxxxxxx" with format "yyyy-MM-dd HH:mm:ss".」という例外が発生します

(3.0系ではデータ構造が異なるため上記の現象は発生しません)

Causes (原因)

本来、member_profileのvalue_datetimeには日付が正しく入っているはずで、
その値をもとにプロフィール閲覧の表示を行っているが
上記のように、ゼロ値もしくはnullかつvalueがでたらめの場合は
プロフィール閲覧で利用しているop_format_date()で例外が発生してしまう。

Way to fix (修正内容)

member_profileの値が以下の場合は値を返さず、nullを返すようにする
  • value_datetimeがnullではなく、ゼロ値の場合
  • op_preset_birthdayに対応するデータなのに、value_datetimeがnullの場合

関連するチケット

関連している OpenPNE 3 - Bug(バグ) #1863: op_preset_birthdayについて、member_profileのvalue_datetimeがゼロ値もしくはnullの場合、プロフィール閲覧時に例外が発生し閲覧できない場合がある Fixed(完了) 2011-01-12

関係しているリビジョン

リビジョン 09d696ad (差分)
Maki Takahashi12年以上前に追加

changed MemberProfile::getValue() to return null if op_preset_birthday's data is Invalid (value_datetime is zero or null) (fixed #2292, BP from #1863)

履歴

#1 Maki Takahashi12年以上前に更新

  • ステータスNew(新規) から Accepted(着手) に変更

#2 匿名ユーザー が12年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 09d696ad5c53da24f87449e52083bf617502fa94 で適用されました。

#3 Naoya Tozuka12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

更新箇所( 09d696ad )確認しました。レビューOKです

#4 Shingo Yamada12年以上前に更新

  • 対象バージョンOpenPNE3.6beta13 から OpenPNE 3.6RC1 に変更

#5 Yuma Sakata12年以上前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

テストOKです。

他の形式にエクスポート: Atom PDF