最後にCGIプログラムを作成します。CGIプログラムの格納場所の/usr/lib/cgi-binに移動してnanoエディタで新規に作成します。
1 2 |
$ cd /usr/lib/cgi-bin $ sudo nano cal.sh |
CGIプログラムのcal.shは次のようになります。「SUM」が合計値を格納する変数です。2行目で、Open-usp-Tukubaiのcgi-nameコマンドを使って「VALUE」変数に値を半角スペース区切りで格納しています。10~26行目で表示するHTMLファイルを生成しています。11行目の「Content-type: text/html; charset=UTF-8」のHTTPヘッダーを忘れると、HTMLファイルが表示されないので注意してください。
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 |
#!/bin/sh SUM=0 VALUE=$(echo ${QUERY_STRING} | cgi-name | awk '{print $2}') for i in ${VALUE} do SUM=$((SUM + i)) done cat << EOF Content-type: text/html; charset=UTF-8 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>加算結果</title> </head> <body> <h3>五つの数値を足すと…</h3> <p> ${SUM} </p> </body> </html> EOF |
保存してエディタを閉じたら、CGIプログラムに実行権限を与えます。こうしておかないと、CGIプログラムが動作しません。
1 |
$ sudo chmod 755 cal.sh |