["]を送信されたときに壊れました。
なおしました。
あと、気づいたけど、
URLが送信されたときURLに[&]が含まれてると[&]に変換されちゃう予感・・・
壊れはしないけど、気が向いたら対応しとく。
ページ埋め込み型掲示板の設置方法とか
ページ埋め込み型掲示板(1)とページ埋め込み型掲示板(2)の設置方法とか書きました。
一部サンプルCGIの保管サーバー変更
Myサーバーに負担かけたくないんで、
可能なものはXREAの無料サーバーに移します。
可能なものはXREAの無料サーバーに移します。
XMLHttpRequest版、掲示板
試作してみたんだけど、
XMLHttpRequestだと、別ドメインの外部ファイルが読めないらしいんだけど、
Scriptと外部ファイルを同じドメインに置いても、
埋め込み元ページが別ドメインだと読みこめないらしい・・・(IEは試してないけど、Mozillaはダメ。)
埋め込み型掲示板使いたい場合って、同じドメインにCGIが置けない場合に限られると思うんで、
致命的・・・
とりあえず、試作品作ったので、需要があるようならアップするので言ってください。
サンプル
公開済みのページ埋め込み型掲示板との違い
.UTF-8な必要がありそうなので、CGIで文字コードの変換をしている。
.文字コードの変換にEncodeを使ったんだけど、自動判別がうまくいかないらしいので、埋め込み元ページの文字コードを設定する必要がある。
.Encode使ってるんで、日本語一文字を一文字として判断できる。(はず・・・)
.IEで書き込んだ時に、キャッシュが有効になってブラウザ上で反映しない。(これは解決できそうな気がする・・・)
.掲示板のページ切り替えの際に、埋め込み元ページごとリロードしないで済む。
.読み込みはこっちの方が早いはず。
.書き込み用CGIと同じドメインのページにしか埋め込めない・・・
ページ切り替えがスムーズにいっていい感じだから、別ドメインで使えればね・・・
XMLHttpRequestだと、別ドメインの外部ファイルが読めないらしいんだけど、
Scriptと外部ファイルを同じドメインに置いても、
埋め込み元ページが別ドメインだと読みこめないらしい・・・(IEは試してないけど、Mozillaはダメ。)
埋め込み型掲示板使いたい場合って、同じドメインにCGIが置けない場合に限られると思うんで、
致命的・・・
とりあえず、試作品作ったので、需要があるようならアップするので言ってください。
サンプル
公開済みのページ埋め込み型掲示板との違い
.UTF-8な必要がありそうなので、CGIで文字コードの変換をしている。
.文字コードの変換にEncodeを使ったんだけど、自動判別がうまくいかないらしいので、埋め込み元ページの文字コードを設定する必要がある。
.Encode使ってるんで、日本語一文字を一文字として判断できる。(はず・・・)
.IEで書き込んだ時に、キャッシュが有効になってブラウザ上で反映しない。(これは解決できそうな気がする・・・)
.掲示板のページ切り替えの際に、埋め込み元ページごとリロードしないで済む。
.読み込みはこっちの方が早いはず。
.書き込み用CGIと同じドメインのページにしか埋め込めない・・・
ページ切り替えがスムーズにいっていい感じだから、別ドメインで使えればね・・・
XMLHttpRequest
以前から、JavaScriptで外部ファイル読めればなぁー
と思ったりしてたんだけど、
「XMLHttpRequest」なんてものがあったんですね・・・
ページ埋め込み型掲示板なんて、リファラーのクエリー使ったりしてスマートじゃないけど、
これ使えばもっといい感じになりそう。
ってわけで、
ページ埋め込み型掲示板は一から作りなおす予定。
つか、JavaScriptで外部ファイルが使えるんなら、
FlashやらJavaAppletやらはなんのためにあるんだ?
ちょっと前まで、JavaScriptの欠点は、
外部ファイルが読み込めない。
図形描画ができない。
だと思ってたけど、
図形描画はうちのグラフ表示スクリプトで実践したし、
外部ファイルが読めるんなら、
クライアントサイドで必要な機能は全部ある気がする・・・
あとは3Dくらいか?(3Dってどうやるんだろ・・・)
と思ったりしてたんだけど、
「XMLHttpRequest」なんてものがあったんですね・・・
ページ埋め込み型掲示板なんて、リファラーのクエリー使ったりしてスマートじゃないけど、
これ使えばもっといい感じになりそう。
ってわけで、
ページ埋め込み型掲示板は一から作りなおす予定。
つか、JavaScriptで外部ファイルが使えるんなら、
FlashやらJavaAppletやらはなんのためにあるんだ?
ちょっと前まで、JavaScriptの欠点は、
外部ファイルが読み込めない。
図形描画ができない。
だと思ってたけど、
図形描画はうちのグラフ表示スクリプトで実践したし、
外部ファイルが読めるんなら、
クライアントサイドで必要な機能は全部ある気がする・・・
あとは3Dくらいか?(3Dってどうやるんだろ・・・)
第一回、数学教室? (最終回)
JavaScriptで円グラフ作るのに、ちょっと三角関数勉強したんで、
自分でもわかる感じの低レベルな数学教室みたいのやります。
間違ってたらごめんね
円周率
ラジアン
自分でもわかる感じの低レベルな数学教室みたいのやります。
間違ってたらごめんね
円周率
円のいろんな数値を算出するのに使う。
くらいでいいです。
以後、πとします。
くらいでいいです。
以後、πとします。
ラジアン
角度の単位で、
180°=π
360°=2π
になるようです。
なんでこの単位を使うのかはわからないんだけど、
中学校(だっけ?)でならった三角関数では、n°との対応表みて長さ調べてた気がするけど、
「360°=2π」から、
「半径=1」のときの円周は「1*2*π=2π」
ですから、「半径=1」の円の、ある角度の部分円の円周みたいな気がするわけで、
三角関数求めるのに部分円の円周が必要なんですかね?
JavaScriptに三角関数の関数が用意されてて、
三角関数のもとめかたは勉強しなかったんでラジアン使う意味はスルーしときます。
n°->ラジアン
Math.atan2
サイン
円の描画
実際には4x4じゃ円は書けないけど、
半径を決めた上で、こんな感じで座標を作って、
全ての座標を、
座標からラジアンを求める。
ラジアンからサインを求めて、半径をかける。(この値をxとします。)
で、xは、座標位置の角度のときの円周の横軸位置ですので、
座標の横軸位置がxより0に近い場合は円の内側、xの方が0に近い場合は円の外側。
となるんで、円が描けます。
180°=π
360°=2π
になるようです。
なんでこの単位を使うのかはわからないんだけど、
中学校(だっけ?)でならった三角関数では、n°との対応表みて長さ調べてた気がするけど、
「360°=2π」から、
「半径=1」のときの円周は「1*2*π=2π」
ですから、「半径=1」の円の、ある角度の部分円の円周みたいな気がするわけで、
三角関数求めるのに部分円の円周が必要なんですかね?
JavaScriptに三角関数の関数が用意されてて、
三角関数のもとめかたは勉強しなかったんでラジアン使う意味はスルーしときます。
n°->ラジアン
「180°=π」なんで、
「n°*π/180」で求められます。
「n°*π/180」で求められます。
Math.atan2
JavaScriptで用意されてる関数で、座標を入力するとラジアンを返してくれる関数ですが、
みたいな座標だと、右半分は、時計回りで「0,1=0->0,-1=π」みたいになるんですが、
左半分は、半時計回りで「0,1=0->0,-1=-π」のように、-の数値になります。
座標を求めるのにはこの方が都合がよさそうですが、
「n°->ラジアン」と比較する際に不便なときは「ラジアン<0」のときに2πを足せばいいかんじです。
-1,1 | 1,1 | ||
-1,-1 | 1,-1 | ||
左半分は、半時計回りで「0,1=0->0,-1=-π」のように、-の数値になります。
座標を求めるのにはこの方が都合がよさそうですが、
「n°->ラジアン」と比較する際に不便なときは「ラジアン<0」のときに2πを足せばいいかんじです。
サイン
Math.sin
のような座標で、「2,2」のラジアンを求めて、その値からサインを求めると、
「2,0と0,0を結ぶ辺=a」「2,0と2,2を結ぶ辺=b」「0,0と2,2を結ぶ辺=c」
の3点を結んだ直角三角形を考えて、
ラジアンは「半径=1」みたいな感じだから、
サインってのは「cの長さ=1」に縮小した直角三角形上の「b」の長さですから、(コサインは「a」)
サインに円の半径をかければ、その座標の角度のときの円周上の横軸の位置がわかります。
JavaScriptの関数で、ラジアンを渡すとサインを返してくれます。
-2,2 | 2,2 | ||
-2,-2 | 2,-2 |
「2,0と0,0を結ぶ辺=a」「2,0と2,2を結ぶ辺=b」「0,0と2,2を結ぶ辺=c」
の3点を結んだ直角三角形を考えて、
ラジアンは「半径=1」みたいな感じだから、
サインってのは「cの長さ=1」に縮小した直角三角形上の「b」の長さですから、(コサインは「a」)
サインに円の半径をかければ、その座標の角度のときの円周上の横軸の位置がわかります。
円の描画
-2,2 | -1,2 | 1,2 | 2,2 |
-2,1 | -1,1 | 1,1 | 2,1 |
-2,-1 | -1,-1 | 1,-1 | 2,-1 |
-2,-2 | -1,-2 | 1,-2 | 2,-2 |
半径を決めた上で、こんな感じで座標を作って、
全ての座標を、
座標からラジアンを求める。
ラジアンからサインを求めて、半径をかける。(この値をxとします。)
で、xは、座標位置の角度のときの円周の横軸位置ですので、
座標の横軸位置がxより0に近い場合は円の内側、xの方が0に近い場合は円の外側。
となるんで、円が描けます。
JavaScriptで円グラフ表示するの作りました。
なんだか、思ってたより簡単だった。
アクセス解析とかで比率表示するのに使えそう・・・
アクセス解析とかで比率表示するのに使えそう・・・
JavaScriptで折れ線グラフ表示するの作ってみました。
Appletのやつアップしようと思ったけど、Script版作ったのでこっちアップします。
CSSで斜め線又は円の表示は不可能だと思ってたけど、なんとかなるもんですね。
(円グラフとかになるとかなりムズそうだが・・・)
CSSで斜め線又は円の表示は不可能だと思ってたけど、なんとかなるもんですね。
(円グラフとかになるとかなりムズそうだが・・・)
OPENしました。
ここは、CGI,JavaScript,JavaAppletなど、
WEBサイトで使用する素材を配布するところです。
とりあえず、さっき作ったページ埋め込み型掲示板をアップしておきましたが、
所有ブログで以前使用していた、インラインフレーム型掲示板(ワイドスカイスクレパーとかで表示するやつ)をはじめ、
メインサイトで利用している、
普通の掲示板、Wikiみたいの、折れ線グラフ表示アプレット、Apacheログ解析ツール、自動記事生成システム、更新履歴自動生成システム、リンク集、
などなど、たぶん全アプリが自前で用意されているんで、
気が向いたら配布用にカスタマイズして、ここで配布しようと思います。
WEBサイトで使用する素材を配布するところです。
とりあえず、さっき作ったページ埋め込み型掲示板をアップしておきましたが、
所有ブログで以前使用していた、インラインフレーム型掲示板(ワイドスカイスクレパーとかで表示するやつ)をはじめ、
メインサイトで利用している、
普通の掲示板、Wikiみたいの、折れ線グラフ表示アプレット、Apacheログ解析ツール、自動記事生成システム、更新履歴自動生成システム、リンク集、
などなど、たぶん全アプリが自前で用意されているんで、
気が向いたら配布用にカスタマイズして、ここで配布しようと思います。