ローカルに php7 と apache を導入し、テスト環境を作ってみた。

php7 のモジュールの組み込みと、 .php の実行時のエラーで少し時間がかかった。

ローカルで実行してみると、 rNote が大量の Notice エラーを出しているのに気づいた。ローカルに導入した php7 の php.ini を見ると、全てのエラーを表示する設定になっていた。これまではリモートサーバでの実行しかしていなかったので、リモートサーバの php がエラーを全て表示しない設定だったため気づかなかったということらしい。かたっぱしから修正してみたが、非常に大量なのでまだまだ時間がかかりそう。ほとんどが、変数未初期化のエラーや $_SERVERなどから名前をインデックスに値を取得する処理で、指定されたインテックスでの値が未定義の場合のようだ。あと、 define で定義される名前が define(FOO,”bar”); のように書かれているためのエラー( define(“FOO”,”bar”); というふうにクオートする必要がある)。

キーワード: php apache


Visual Studio Code 2018-11-28 (水) 02:47:24+09:00

ソフトウェア

なんとなく見つけたので検索してみた。

Microsoftから無償配布されているらしい。名前が Visual Studio と似ているが統合開発環境ではなくエディタらしい。PHPのコードもインテリセンスが効くらしい。

というわけで、インストールしてみた。

2018-11-28

こんな感じでコードが見やすくなった。自分で書いた関数なども含めてインテリセンスも使える。

まだやってないが、 xdebug を使って PHP のデバッグ実行もできるようだ。便利そうだが、サーバに xdebug を導入しないと使えないのと、 サーバの /tmp に大量のファイルが出来て領域を食いつぶしてしまった・・・という話もあったので、ちょっと様子見。

PHP のコードを書くときは重宝しそう。

[コメントの受付は終了しています ]
この記事のリンク元 | 1 |


capcha の一種の Securimage を使ってツッコミを書き込むときに画像認証させるようにしてみました。

公式サイトの説明によると、

・ツッコミの送信後にフォームから送られたデータを処理する php の最初の行に session_start(); が書かれている必要がある。(HTML出力の前に置かないと、入力文字列のチェックが常に失敗する可能性があるそうです。)

らしいので、 rNote の場合、 rnote.php の HTML 出力の直前あたりに session_start(); を書く必要が本当はあるのだと思うのですが、 rnote.php は、ツッコミ以外の様々な処理の結果を受け動作するので、どんな影響が出るか分かりません。なので、とりあえず session_start(); は書かずに処理させてみましたが、見たところ正常に動作しているようです。

ただ、認証画像の内容を別のものに変えたいときにクリックするリンクをつけてみたのですが、クリックすると画像が出なくなるのであれこれやってみたのですが、よく分からず、画像変更のリンクは外してあります。なんで画像が消えてしまうんだろう・・・。

Securimage 追加の手順:

(1) Securimage をサーバにアップロード。

(2) writeback.skin を修正。

ツッコミ用フォーム表示のところの、

<p><input type="submit" value=" ツッコむ " /></p>

< /form>

の間に、

< img id="captcha" src="securimage/securimage_show.php" alt="CAPTCHA Image" />
< input type="text" name="captcha_code" size="10" maxlength="7" /> 

を追加。

(3) rnote.php を修正。

function WriteBackSave() の先頭部分の、

$file = $_GET['u'];

DoublePostChk($name.$com);

の間に、

$img = new Securimage();
if ($img->check($_POST['captcha_code']) == false) {
    error('画像認証の文字が入力されていないか、入力文字が一致しません。',ERR_WB);
}

を追加。

[コメントの受付は終了しています ]
この記事のリンク元 | 1 |

キーワード: rNote Securimage capcha