Cockatrice: C言語用CGIライブラリ

更新履歴

[2007/10/02 (Tue)]
Cockatrice 2.1.2-RELEASE を公開。 文字列チェックモジュールを regex(3) で書き換えた。

[2007/09/01 (Sat)]
Cockatrice 2.1.1.1-RELEASE を公開。 iconv(3) 関数の戻り値チェックに誤りがあったのを訂正。

[2007/08/25 (Sat)]
Cockatrice 2.1.1-RELEASE を公開。 PostgreSQL 用モジュールの exec()/query() の動作が SQLite と違っていたのを修正。 文字コードを EUC-JP に変換する cgi->util->conv_any2euc() を実装。

[2007/08/24 (Fri)]
Cockatrice 2.1-RELEASE を置き換え。ライブラリ自身に変更はなし。 PostgreSQL 用モジュールの追加のみ。

[2007/08/21 (Tue)]
CGI ライブラリから HTML Authoring 支援機能を分離した Cockatrice 2.1-RELEASE を公開。 Cockatrice-1.0 ライブラリとの下位互換性はなし。

[2002/07/31 (Wed)]
セッション管理とホスト名チェックのバグを修正した Cockatrice 1.0-RELEASE を公開。

概要

Cockatrice は、C言語用CGIプログラムライブラリです。 基本概念は Perl モジュールの CGI.pm を参考にしています。 Ajax を使ったアプリケーションのバックエンド CGI プログラムを高速化したい場合などにも利用できます。

次のような特徴を持っています。

  • GET/POST メソッドに依存しない統一した API の提供
  • Cookie の作成/操作が容易
  • FORM タグにおける FILE タイプ("multipart/form-data")に対応
  • URI文字列の escape/unescape 用関数完備
  • MD5, SHA1, SHA256, RMD160 のダイジェスト関数が利用可能
  • モジュールによる機能拡張が可能
    1. 文字列検査機能
    2. 日付時刻取得機能(旧暦と六曜と二十四節気にも対応)
    3. 環境変数取得機能
    4. ファイルロック機能
    5. セッション管理機能
    6. データベース操作機能(SQLite3PostgreSQL に対応)
  • URL エンコードされた文字列の自動デコード機能
  • HTML4.01 に準拠した HTML Authoring 支援機能
  • 日本語漢字コードの自動変換iconvwkf-1.2.x 以上が必要)

ドキュメント

プログラミング講座の第二回郵便番号から住所の入力支援を行うで、 Cockatrice と JavaScript を使ったプログラムの実装について述べていますので、 こちらも参考にしてください。

ダウンロード

Cockatrice 2.1.2-RELEASE(2007/10/02)

パッケージ名 サイズ MD5値
cockatrice-2.1.2.tar.gz 280,637 db9a71428602075340e4f95b62056c07
cockatrice-2.1.2.tar.bz2 208,188 30ccfbf8a8e6c9e3d351054bd41d8bef

Cockatrice 1.0-RELEASE(2002/07/31)

パッケージ名 サイズ MD5値
1.0-RELEASE (gzip版) 104,719 803aab14a0e1303cc20eaf4ae1a07637
1.0-RELEASE (bzip2版) 85,780 d13b1770b7683e922734cce88cd6e082

実装例

mini カレンダー

JavaScript を有効にしていると、 本ページの左側に小さなカレンダーが表示されます。 年月表示部の左右のボタンをクリックすると先月と翌月のカレンダーを表示します。 仕組みは JavaScript の XMLHttpRequest() を使って、 非同期に ajaxcal.cgi を呼び出しているだけです。 ajaxcal.cgi は、Cockatrice を使って実装してあります。 Cockatrice-2.1 のアーカイブにある ajaxcal.c というソースコードです。

ウェブカレンダー

Cockatrice-2.1 からは日付と時刻に関して、 カレンダー作成を目的とした機能を追加しました。 その実装例として、 六曜と二十四節気も表示するウェブカレンダーのスクリーンショットを示します。 ソースコードは、Cockatrice-2.1 のアーカイブにある webcal.c です。 ちなみに、カレンダーの彩色は、手元の卓上カレンダーを参考にしました。

< 2007年8月 >
      1
大安
2
赤口
3
先勝
4
友引
5
先負
6
仏滅
7
大安
8
赤口
立秋
9
先勝
10
友引
11
先負
12
仏滅
13
大安
14
先勝
15
友引
16
先負
17
仏滅
18
大安
19
赤口
20
先勝
21
友引
22
先負
23
仏滅
処暑
24
大安
25
赤口
26
先勝
27
友引
28
先負
29
仏滅
30
大安
31
赤口
 

実装参照用ソースコード

その他の Cockatrice を利用したソースコードの実装例です。 上記アーカイブにも含まれています。

Google