GIJOE さん、こんにちは
myalbum をゲスト投稿を許可してゲストが投稿すると
Fatal error: Call to a member function incrementPost() on a non-object in ・・/myalbum/submit.php on line 199
というエラーが発生します。
submit.php 199行目あたりに以下のような赤字部分を追加してみました
if( $submitter > 0 ){
$user_handler =& xoops_gethandler('user') ;
$submitter_obj =& $user_handler->get( $submitter ) ;
for( $i = 0 ; $i < $myalbum_addposts ; $i ++ ) {
$submitter_obj->incrementPost() ;
}
}
このような回避方法でいいでしょうか?
バグ報告ありがとうございます。
確かに、そこを変更した時に何もチェックしていませんでした。
ちなみにコードは、wyeさんの書かれたものでほとんど問題ありませんが、今回のfatalは、$submitter_objがObjectじゃない、ということに由来するので、
$user_handler =& xoops_gethandler('user') ;
$submitter_obj =& $user_handler->get( $submitter ) ;
if( is_object( $submitter_obj ) ) {
for( $i = 0 ; $i < $myalbum_addposts ; $i ++ ) {
$submitter_obj->incrementPost() ;
}
}
こんな感じにすると思います。
返信ありがとうございます
$submitter で判定するか、$submitter_obj で判定するかでちょっと迷ったんですが、$summitter を選んだのは最初の2行の処理をしない方が負荷が少ないのかなぁと思ったからです。
Quote:
今回のfatalは、$submitter_objがObjectじゃない、ということに由来するので、
$submitter_obj で判定したほうがエラーの所在というかポイントがはっきりしてますね