Form GCM

DATA-1: DATA-2:

【Source Code】
<form action="form_gcm.html" method="get">
  DATA-1: <input type="text" name="data1">
  DATA-2: <input type="text" name="data2">
  <input type="submit">
</form>

<script type="text/javascript">
    param = new Array();
    //window.alert(window.location.search);
    if (window.location.search.length>12)
    {   var query = window.location.search.substring(1);
        var parameters = query.split('&');
        for(i=0; i<parameters.length; i++)
        {
            var element = parameters[i].split('=');
            var paramName = decodeURIComponent(element[0]);
            var paramValue = decodeURIComponent(element[1]);
            param[paramName] = parseInt(paramValue);
        }
        document.write('<p><hr></p>');
        d1 = param["data1"];
        d2 = param["data2"];
        document.write(d1, " : ", d2, "<br>");
        while(d1!=d2)
        {   if (d1>d2)  d1 = d1 - d2;
            else        d2 = d2 - d1;
        }
        document.write("GCM : ", d1, "<br>");
    }
</script>

form から "data1" と "data2" をタイプ入力して "form_gcm.html"(自分自身)を呼び出します。
<form action="form_gcm.html" method="get">
  DATA-1: <input type="text" name="data1">
  DATA-2: <input type="text" name="data2">
  <input type="submit">
</form>

パラメータが渡されたとき "data1" と "data2" を受け取って GCM を計算して印字します。
window.location.search が 12 文字以上の時、パラメータを受け取ります。
("data1", "data2" とその値を含めると 12 文字以上になる)
パラメータ取得の基本は GET リクエストを取得 を参照して下さい。
    param = new Array();
    if (window.location.search.length>12)
    {   var query = window.location.search.substring(1);
        var parameters = query.split('&');
        for(i=0; i<parameters.length; i++)
        {
            var element = parameters[i].split('=');
            var paramName = decodeURIComponent(element[0]);
            var paramValue = decodeURIComponent(element[1]);
            param[paramName] = parseInt(paramValue);
        }
        document.write('<p><img src="img/bar_gh.gif"></p>');
        d1 = param["data1"];
        d2 = param["data2"];
        document.write(d1, " : ", d2, "<br>");
        while(d1!=d2)
        {   if (d1>d2)  d1 = d1 - d2;
            else        d2 = d2 - d1;
        }
        document.write("GCM : ", d1, "<br>");
    }

GCM の説明は Gcm Lcm の説明 を参照して下さい。
PHP でも同様のプログラム form GCM を作成しています。
但し、JavaScript はクライアントサイドで動作するのに対して PHP はサーバーサイドで動作します。
今回のようなプログラムでは JavaScript の方が適しています。

前田稔の超初心者のプログラム入門
超初心者のプログラム入門(JavaScript)