[568] potiboard.phpでのエラー by 兵衛 さんへ返信

[568] potiboard.phpでのエラー

potiboard.phpでのエラー by 兵衛 (165 KB)
こんばんは。
「お絵かき掲示板簡単設置方法 2021年版」に従って設置を試みたのですが、
添付画像のとおり、下記のエラー文が表示されてしまいました。
どこに問題があるのでしょうか。

> Fatal error: Uncaught TypeError: Return value of eftec\bladeone\BladeOne::getFirstLoop() must be an instance of eftec\bladeone\object or null, instance of stdClass returned in /home/【ID】/【ID】.php.xdomain.jp/public_html/BladeOne/lib/BladeOne.php:1981 Stack trace: #0 /home/【ID】/【ID】.php.xdomain.jp/public_html/templates/basic/cache/b28b7af69320201d1cf206ebf28373980add1451.bladec(176): eftec\bladeone\BladeOne->getFirstLoop() #1 /home/【ID】/【ID】.php.xdomain.jp/public_html/BladeOne/lib/BladeOne.php(1483): include('/home/【ID】...') #2 /home/【ID】/【ID】.php.xdomain.jp/public_html/BladeOne/lib/BladeOne.php(1137): eftec\bladeone\BladeOne->evaluatePath('/home/【ID】...', Array) #3 /home/【ID】/【ID】.php.xdomain.jp/public_html/BladeOne/lib/BladeOne.php(2041): eftec\bladeone\BladeOne->runInternal('main', Array, 0, true, 0) #4 /home/【ID】/【ID】.php.xdomain.jp/public_html/potiboard.php(2613): eftec\bladeone\BladeOne->run('main', Array) #5 /hom in /home/【ID】/【ID】.php.xdomain.jp/public_html/BladeOne/lib/BladeOne.php on line 1981

(エラー文のうち、私が設定したアカウント名部分は【ID】として伏せてあります。)
レンタルサーバはXfreeで、PHPのヴァージョンは7.1.xです。
何かご助言を戴けるとありがたいです。よろしくお願いいたします。
その他、こちらが提示すべき情報がございましたら、おっしゃってください。

[569] Re: potiboard.phpでのエラー
あえて、このエラーをだす事ができるかどうか試してみたのですが、テスト環境が
PHP5.6,PHP7.4,PHP8.0,PHP8.1
の4種類しかないためPHP7.1では
ちゃんとした動作確認ができませんでした。PHP7.1では、採用したテンプレートエンジンBladeONEが動かないという事なのかもしれません。

PHPバージョン切り替え|無料レンタルサーバー【エックスフリー】

…PHP7.1までなんですね。

私がPOTI-boardとは別に作った
「Petit Note」
というお絵かき掲示板なら
PHP5.6という古いPHPのバージョンでの動作確認ができていますので、
ご質問の件の解決にはならないのかもしれませんが、以下のお絵かき掲示板であれば、動作する可能性があります。
Petit Note v0.21.6 ​リリース · satopian/Petit_Note

[570] Re: potiboard.phpでのエラー
ひきつづき調査中ですが、やはりPOTI-boardで使っているBladeOneがPHP7.1では動作しないという事のようです。
テンプレートエンジンを使っていない
Petit Noteは古いPHP5.6でも動きます。

エラーの内容は、BladeOneのエラーですので、テンプレートエンジンをあえて使っていない(ただし素のPHPのテンプレートは使用)
Petit_Note
を使うか、別のサーバの利用をおすすめします。
POTI-boardの動作環境をPHP7.4以上に変更するかもしれません。
PHP7.1やPHP7.2での動作確認ができないか、そちらも調べているところです。
よろしくお願いします。

[571] Re: potiboard.phpでのエラー
PHP7.1の環境を作って確認しました。
今回報告があったのと同じエラーが発生して動作しませんでした。
申し訳ありませんが、POTI-boardはPHP7.4以上で動作とさせていただく事になりました。

Petit Note v0.21.6

は、POTI-boardを改造した経験をもとに、POTI-boardではできなかった事を実現するために新しく作ったお絵かき掲示板のPHPスクリプトです。
こちらであればPHP7.1で動作するはずです。
繰り返しになってしまいますが、
POTI-boardはPHP7.1環境では動作しません。
しかしPetitNoteは動作する筈です。
PetitNoteをご利用いただくか、どうしてもPOTI-boardが良いという事であれば、PHP7.4以上が使えるサーバの利用をご検討いただければ幸いです。
PHP7.1でも使えると書いてしまってすみませんでした。

[572] Re: potiboard.phpでのエラー
> POTI-boardはPHP7.1環境では動作しません。
> しかしPetitNoteは動作する筈です。

承知いたしました。
調査の上、ご確認くださり、ありがとうございました。

[573] Re: potiboard.phpでのエラー
他の方もここを読んでいるという前提で追記します。
あれから追試して、
POTI-boardは、PHP7.1では動作しないものの、PHP7.2では動作する事が確認できました。
最新バージョンでは、PHP7.1の時にはPHPのバージョンが低い事を知らせるエラーメッセージを出す形になりました。
PHP7.4である必要は現時点ではありません。
BladeOneのバージョンアップにともなって、必要なPHPのバージョンがあがっていく可能性はありますので、比較的新しいPHPのバージョンが使用可能であればそれに越した事はありません。
PetitNoteはPHP5.6で動作すると書きましたが、32bit環境では動作しない事が確認されたため、32bit環境のPHP5.6でも動作するように書き直しています。
もうしばらくお待ち下さい。
また、PetitNoteの掲示板のトップページのスクロールすると出てくる上に戻るリンクの表示を前回の更新で壊してしまっていたようです。
こちらの修正もあわせて行っているところです。
もうしばらくお待ちください。

記事No. 削除キー