MastersBar/6: バグとか

  • 投稿時間: 2011-02-12 (土) 18:55:07
  • 投稿者: Pseudothei
  • メール:
  • サイト:
  • タイトル: バグとか

怪しいことがあったら報告するスレッドということで。

とりあえず家のサイトで報告のあったもので、元々のスクリプトに起因するバグがあったのでご報告おば。

キャラクター名などに、半角の「=」「:」「;」を使用するとクッキー機能が正しく使えなくなります。
これは、上記の記号が sub cookie_get においてスプリッターとして使用されているため、バッティングしてしまい起こるものです。

対処法としては――
1. 半角の「=」等を使用禁止にする
1. 半角の「=」等を全角文字へ強制的に変換する
1. クッキーにエンコードとデコードを行う
――などが考えられます。
一時的に他の文字への置き換えや、エスケープするのもありかもしれませんが、試していないので分かりません。

エンコードしてしまうのが一番プログラムっぽいので少し詳しく書くと、sub cookie_set において、変数 $cook に代入している変数のうち、$Fm{'name'} などのフォームから送信された変数をエンコードしてから代入するようにします。
そして sub cookie_get においては、サブルーチン内でクッキーの値の一部が代入された変数 $c_name、$c_pass などをデコードします。

面倒くさくなったのでコーディングについては割愛します:)

 

  • 投稿時間: 2011-02-28 (Mon) 16:53:32
  • 投稿者: moon
  • メール:
  • サイト:
  • タイトル:

対処の一方法を記載したページを作成してみました。(不具合修正/クッキーに保存できない文字への対応

 

新規投稿

投稿者:
メール:
サイト:
タイトル:
コメント:
*PukiWiki書式ヘルプ*

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-07-29 (日) 18:38:33 (78d)