- 締切済み
保存データの圧縮方法
テーブルでデータ行を大量に表示してます。 この行は表示しない、というのをユーザにチェックボックス設定などで設定させ、それを保存しておこうと思っています cookieで保存すればいいと思うのですが、以前cookieの保存限界容量が4KB?か2KB?であるようなことを目にしたので、 他のデータも保存している関係上、ちょっとそのまま記録することが難しそうで、圧縮して保存しないといけなそうです 行には全てIDが振ってあるのですが、1から順に振られているわけではなく かなり飛び飛びになって2000行位まで振られてます。 そしてたまにアップデートによってその穴のところに新たなデータが入ることがあります 何かいい圧縮方法はないでしょうか
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- babu_baboo
- ベストアンサー率51% (268/525)
ほぞんするじょうほうりょうは、ひょうじするか、しないかの1びっとなので、 てーぶるのぎょうを、うえから びっとえんざん していって、6びっとぶんになったら、そのすうちを '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz#$'のもじをりようして 64しんすうにでもおきかえて、くっきぃ~にする。 すると2000ぎょうでも、334もじでたりる。というのは?
- babu_baboo
- ベストアンサー率51% (268/525)
DOM Strageをぐぐれ。
- yyr446
- ベストアンサー率65% (870/1330)
javascriptで出来るのは、ユーザー名(別にユーザー名じゃなくてもいいけど) 入力欄と、名各行にチェックボックスを配置し、チェックが付いたIDを配列にして、 ユーザー名と共にサーバー側POSTするぐらいです。 サーバー側は、POSTされたデータで、ユーザー名をキーにして、 テキスト(CSV)なりDBに保存するとか、 逆にページ要求があった時、サーバー側はそのユーザー名から チェックされているIDを検索して、チェックされていたらそのIDの行を非表示にして 出力するのが、無難ではないかと... 後半部分はjavascript + AJAX でも出来そうですが、わざわざ AJAXにしなくてもよいような。
- yambejp
- ベストアンサー率51% (3827/7415)
何千行ものフラグ管理をクライアント側にやらせるのは酷では? サーバー側にもたせるという選択肢はないのでしょうか?
補足
そうですね 出来ればローカルで実行させたいところです trueを1 falseを0にして全てを一行に表示 そしてそれを16進数にして見たのですが、それでも半分程度までしか減りませんでした