SQLの窓 イラストAC フリー素材

2021年06月24日

2021年 前期試験問題( 2 ) : 15

PHP には、スーパーグローバルと言う『すべてのスコープで使用できる組み込みの変数』が存在します。この中でも特に WEBアプリケーションにおける FORM からの送信で作成される変数をと書きます。この二つの変数名は、FORM 要素の属性の値として指定可能な文字列より命名されたものです。

その次に重要なスーパーグローバル変数は、です。この中には常にその時の PHP を取り巻く環境変数が設定されているので、WEB アプリケーションではこのうちのいくつかを利用する事になります。
Array
(
    [MIBDIRS] => C:/xampp/php/extras/mibs
    [MYSQL_HOME] => \xampp\mysql\bin
    [OPENSSL_CONF] => C:/xampp/apache/bin/openssl.cnf
    [PHP_PEAR_SYSCONF_DIR] => \xampp\php
    [PHPRC] => \xampp\php
    [TMP] => \xampp\tmp
    [HTTP_HOST] => localhost
    [HTTP_CONNECTION] => keep-alive
    [HTTP_CACHE_CONTROL] => max-age=0
    [HTTP_SEC_CH_UA] => " Not;A Brand";v="99", "Google Chrome";v="91", "Chromium";v="91"
    [HTTP_SEC_CH_UA_MOBILE] => ?0
    [HTTP_UPGRADE_INSECURE_REQUESTS] => 1
1) REQUEST_METHOD : ブラウザからどのように送られたかが設定されるので、またはが値となります。

2)  : どちらも同じ値で、実行されたスクリプトのパスが設定されます。

さらに、WEBアプリケーションにログインは付き物ですから、その際かならず使用する事となるという変数があります。これは、一定時間ユーザがページを移動してもサーバ側で値を維持可能な変数です。

これらの変数は、PHP をデバッグする上で重要な値を常に保持しているので、という関数でページの最後に出力しておくと良いでしょう。また、WEBアプリの都合上画面上に出す事が容易で内場合は、この関数の第二引数を true にして出力を文字列に変換し、関数を使ってテキストファイルとして出力する事も考えましょう。

WEBアプリケーションは、基本的には文字列を扱う操作が重要になります。その為、文字列の中に変数を埋め込んだり、HTML の中に PHP の変数を埋め込んだりする事が多々あります。文字列の中に変数を埋め込む場合はを使用してその間に変数を記述します。また、埋め込まずに他の文字列と変数を連結する方法もあります。その場合 PHP では連結記号(結合演算子)としてが使用されます。

しかし、文字列は通常ダブルクォート内で作成される為、ダブルクォート文字そのものを表現するにはする必要があります。その為可読性が悪くなるので以下のような技術を使うと記述も楽になり、視認性も良くなります。
    $syozoku = "";
    while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
        $syozoku .= <<<GAMEN
            <option value="{$row["コード"]}">{$row["名称"]}</option>
GAMEN;

    }    
このような方法をと言います。


posted by at 2021-06-24 19:22 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

2021年06月20日

2021年 前期試験問題( 1 ) : 16

MVCでは、プログラムを3つの要素に分割します。

それぞれの役割を以下のように決めてWEBアプリ用のテンプレートを作成します。

  の場合

アプリケーション固有の処理を記述するようにします。よって、の定義を行ってから呼び出す事になります。

  の場合

ユーザにとって重要なを定義します。殆どの記述をクライアント側で処理されるで記述します。また、これらの特性より、職種としてのの介入を容易にする目的があります。

  の場合

アプリケーション全体を見渡せるような基本的な部分を記述します。主に、された内容を正しく処理する為の条件や処理の呼び出しを記述します。
if ( $_SERVER['REQUEST_METHOD'] == "POST" ) {
    // ***********************************
    // 更新
    // ***********************************
    $result = check_data();
    if ( $result == true ) {
        insert_data();
        $_POST["name"] = "";
        $_POST["level"] = "";
    }
    else {
        //print $err_message;
    }
}

MVC の役割を持つ PHP のファイルを3つ作成し、それぞれ  とします。よって、ブラウザから呼び出されるのは C の役割を持ったファイルになるので、他の二つのファイルは PHP ので、読み込むことになります。

C からは、他の二つのファイル以外にもシステム共通の処理を記述したファイルも同様に読み込みますが、これらは基本的に一番最初に読み込む事になります。その次に読み込まれるのが M の部分で、C の最後に V の部分を読み込みます

V の部分で動的に PHP で作成する必要がある場合は、PHP の変数埋め込み方法を使用して変数内に必要なクライアント側の記述を構築します。

その変数を $dynamic とすると、その記述はとなります。

posted by at 2021-06-20 14:27 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

2020年11月30日

後期試験問題 8ページ目

Windows にはと言う手軽に扱える二つの言語を使ったスクリプト言語のプラットフォームがあります。

かつては VBScript を使う事が多かったですが、現在では VB 系は Excel のマクロである VBA のみが生き残っているのみで、現実的にはを利用する事となります。

その為、ソースコードの拡張子はとなり、Windows のエクスプローラからダブルクリックで実行するアプリケーションは.exe となります。しかし、処理としてはバッチ処理が主な目的となる為、コマンドプロンプトで実行する事を前提として、cscript.exe で実行させるという事を考え、Visual Studio Code でそのようにビルドタスクの実行で処理できるように、.vscode ディレクトリ内に.json を置いて適正な値を設定します。

このプラットフォームで利用可能なクラスは COM と言うテクノロジーで作成されており、Windows にはデフォルトで使用可能なクラスがいくつか存在します。

◎ 基本的な部分をサポートするクラス => .Shell
◎ OS に近い部分の処理 => Shell.
◎ データベースの接続 => ADODB.
◎ データベースの読込 => ADODB.
◎ バイナリデータの処理 => ADODB.
◎ メール処理 => CDO.
◎ インターネットアクセス => Msxml2.
◎ テキストファイルの処理 => Scripting.

その他にも重要なクラスとして(MIcrosoft Excel がインストールされている必要があります)、 .があります。

これらのクラスをインスタンス化するには、 new ("クラス名") という記述によってインスタンス化します。

さらに、これらの処理は拡張子が .hta であるでも実行が可能で、ブラウザ上で使用可能な jQuery も使えます。そして、そのデバッグにはを使用できるようにする為に特殊な設定を行って一般の WEB 上でも稼働が可能となります。



posted by at 2020-11-30 12:13 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

後期試験問題 7ページ目

前述の大きな機能以外にも、Google Chrome に関する知識として重要なものがいくつかあります。

◎ 表示しているページのコンテンツを全て保存してローカルで再現できるようにするにはメニューからを実行します

◎ URL をデスクトップからすぐ開く為のアイコンを作成するにはその名の通り『ショートカットの作成』をメニューから実行しますが、Chrome をアプリのように開くには保存時ににチェックを入れます

◎ Google Chrome を終了する時にログインしているサイトからログアウトさせるには、chrome://settings/cookies で表示される設定画面のでサイトを登録する。

◎ 前述のツールの中の設定ページのセクションにあるチェックボックスで JavaScript を無効にする事ができます。

 

◎ Chrome 以外のブラウザでも可能ですが、ブックマークに javascript: を記述して、その後ろに JavaScript の処理を記述し、最後に void(0) を記述するとそのページに対して直接 JavaScript を実行できるようになります。これを一般的にと呼びます。



◎ キャッシュ削除するダイアログの表示は、他のブラウザでも一般的にキー +キー +キーです 

◎ 表示しているページで強制的にキャッシュを削除したい場合はツールを表示させて再読み込みアイコンを右クリックしてメニューを表示させてを選択します



posted by at 2020-11-30 12:12 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

後期試験問題 6ページ目

WEBアプリケーションはサーバ側の処理を PHP とすると、クライアント側の処理はで構成され、クライアント側は Google Chrome で表示される事を前提として授業を行っています。

クライアント側の情報は、Google Chrome のツールという機能によって容易に参照が可能ですが、機能は多岐に渡り複雑なので使いこなすにはかなりの訓練が必要です。



この機能の起動はキーを使うか、ページ上で右クリックしてメニューからを選択します。そしてこの機能の中でも重要なものが以下の機能となります。

1) エレメンツ
ページで使用されているの情報をページ上のコンテンツをマウスでクリックする事によって読み取ります。

2) コンソール
ページ上で実行されたの結果や、ページ上に対してで直接処理を実行する事ができます。

3) ネットワーク
ページ上のコンテンツが行ったインターネットとのアクセスの内容を知る事ができます。

4) アプリケーション
ページに対して PC が個別に保存しているの情報に対して参照・登録・修正・削除の機能を持っています。





posted by at 2020-11-30 12:09 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

後期試験問題 5ページ目

レジストリは Windows の重要な設定が保存されており、知識の無いものが不用意に変更すると Windows が動かなくなります。しかしエンジニアやプログラマはその意味を知っておく事はとても重要です。

レジストリの情報の追加・変更・削除はというアプリケーションで行い、コマンド文字列は.exe です。

レジストリの構造はツリーになっており、理解しておくべき大きなツリーが 3 つあります。



このうち、PC のソフトウェアの設定に使われるのがです。

学校の Google のアカウントで Google ドライブを利用する際、通常の HDD と同じように繋げるアプリケーションをと言います。

しかし、このアプリは問題もあるので、バックアップに使う場合 xcopy では無くを使用する必要があります。このアプリケーションはが必要なので、自宅で利用する場合は継続利用も問題無いですが、学校で使う場合は授業終了時にする必要があります。

Google ドライブに保存したいデータを他の学生も見れるようにするには、を作成して『メンバーを管理』からユーザを追加する必要があります。このような処理は、Google スプレッドシート単位でも行う事ができるので、自分専用の場所から Google スプレッドシートのをコピーして見て欲しい相手にメール等で渡す事ができます。さらにそのユーザに対して『閲覧者』ではなく『編集者』にすると言うようなを与えるとお互いに修正作業が可能になります。



このようにインターネットを介してデータをお互いに見たり変更したりする事は特殊なアプリケーションが必要になりますが、Windows で教室内の他の PC と行う場合にはエクスプローラからの設定で可能です。フォルダを右クリックしてを選択してから表示されるダイアログでタブを選択して設定しましょう。



posted by at 2020-11-30 12:01 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

後期試験問題 3ページ目

コンピュターアイコンを右クリックして『管理』を選択して表示されるウインドウはWindowsを管理する上で重要な UI が多く登録されています。その中で特に5つの知っておくべき機能の概要が以下となります。

1) => システム全体から出力される OS 寄りのメッセージのリスト。
2) => 定義されたタイミングでタスクを実行する事ができます。
3) => ネットワークドライブの割り当てで使用するリソースの一覧です。
4)ローカルユーザーとグループ => ログインユーザのメンテナンスを行います。
5) => システムで実行中の常駐アプリケーションの停止を行ったり、状態を知る事ができます

この内、5) で実行中のアプリケーションは個別の名称で登録されており、その名称を使用してコマンドプロンプトから停止する事ができますが、コマンドの種類には2種類あり、個別の名称を Spooler とすると、一つはSpooler、もう一つはSpooler と入力して実行します。

最初のコマンドは処理が終わるまで待機し、二つ目のコマンドは実行するとすぐ終了します(バックグラウンドで実行されます)



PC がネットワーク上で動作する為に、それぞれ固有の IPアドレスを持っています。これらの情報を簡単に速く取得するには、コマンドプロンプトよりと入力します。

その際表示される情報として『デフォルト ゲートウェイ』で示される IPアドレス を持つハードウェアは、通常ネットワークの外部への出口であるルータ等が持っているアドレスです。

また、自分自身の PC名も表示されますが、そのPC名は Windows ロゴ キーキーを同時に押す事で表示されるウインドウで確認する事が望まれます。

Windows ロゴ キーを使用したショートカットキーのうち重要なものは以下のようになります

キー => Windows 設定ウインドウの HOME 表示

キー +キー => 画面上の部分キャプチャー

キー => ファイル名を指定して実行

キー => エクスプローラ




posted by at 2020-11-30 11:58 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

後期試験問題 2ページ目

エクスプローラのアドレスバーはコマンドプロンプトと同様に処理可能で、と入力すると現在表示しているフォルダでコマンドプロンプトが開きます。

その他にも決まった文字列を入力すると特定のフォルダを開きます。例えば、テンポラリフォルダを開くにはと入力し、と入力すると、ファイルを『送る』で表示される一覧の内容を登録したフォルダが開きます。



は、Windowsでドライブ装置やストレージその内部を区切ったパーティションなどを識別するために与えられる一文字のアルファベットです。
は、Windowsネットワーク上で共有されている様々な資源(ファイルやフォルダ、プリンタなど)の位置を表記する標準的な記法で、という文字を二つ重ねて記述した後に通常 PC 名が続いて記述されます。



この二つの概念を使って、新しいドライブをシステムに追加する事を『ネットワークドライブの割り当て』と言います。その場合フォルダ側にネットワーク上の共有資源の名前であるを指定します。

新しいドライブに他のPCのフォルダを割り当てるにはPC側でそのフォルダをする必要があります。その際読込のみか更新可能かの設定をフォルダのプロパティのダイアログのボタンをクリックしてその先で行います。

設定の結果の名前の確認は、コマンドプロンプトからと入力する事で最も簡単に確認できます。






posted by at 2020-11-30 11:40 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

後期試験問題 1ページ目

Windows10 のメニューの Windows管理ツールにあるで、Windows Update の必要無いファイルを削除する事ができます。



管理者権限で簡単に実行できるようにの詳細設定ボタンで表示される『管理者として実行』にチェックを付けておくことによって、すぐに Windows Update の必要ないファイルの削除の準備が可能です。

は、Windows で実行されるアプリケーションの情報を得る為にあらゆる手段を提供する重要な Windows の基本ツールです。



初期状態では、『簡易表示』になっているので『詳細』に変更します。そして、さらに詳細タブに移動して列を表示可能にする事によって、アプリケーションが 64ビットなのか 32ビットなのかすぐ解るようにしておくことが重要です。

そして、タブに移動して必要の無い常駐プログラム等は無効に設定しましょう。また、簡単にこの PC にログインした後起動したいアプリがここに表示されるようにするには、アプリの等をフォルダにコピーしておく事で可能になります。

このフォルダはファイル名を指定して実行から shell:を入力して開く事ができます。

Windows でアプリケーションを実行するには、そのアプリが存在するフォルダに移動して実行するか、PATH に登録して OS に探してもらうようにします。



PATH 以外も全て一覧で簡単に取得するには、コマンドプロンプトでと入力します。





posted by at 2020-11-30 10:33 | プログラマ用 | このブログの読者になる | 更新情報をチェックする

2013年06月10日

専門ガッコの授業で、Win8 と Windows Phone と Android と PHP を同時進行しています。

Win8、Windows Phone、Android はいずれも大きな一般的データーベースに対するアクセス方法を持ちません。Windows Phone、Android はスマホだから当然ですが、Win8 も、将来を見据えてそういうのは Framework にありません。よって、データーベース部分は PHP に任せるのが簡単です。

課題として求める機能が、
1) 画面遷移
2) Http による GET 読み出し
3) Http による POST 更新処理
4) ListView(または Box)による一覧処理
5) データのインターフェイスはとりあえず XML( 後期に JSON )
6) 更新時の選択応答

ですが、以下で全て網羅されているはずです。

※ PHP の更新 API 部分はこちらが作成します

Win8 ストアアプリWin8 ストアアプリの、メモリ上にページを残す画面遷移と、前画面のコントロールの参照Windows8(C#) ストアアプリ : 複数画面を同時にメモリ上に置く画面間移動処理Windows8(C#) ストアアプリ : HttpClient で Get と Post する簡易クラスWin8 ストアアプリで、『選択肢を応答するダイアログ』を簡単に使うための MessageBox クラスWin8 ストア : リストボックス テンプレートWin8 ストア : UrlEncode と UrlDecode


Windows Phone課題用テンプレートListBox テンプレートWindows Phone から Post 投稿 と Get 読み出しWindows Phone の MessageBox


Android

Android 4.2.2 ADT : シンプルな ListView セット
Android から Post 投稿 / HttpPostAndXml extends AsyncTask
Android ADT の AlertDialog を使いやすく / MessageBox クラス
Android 4.2.2 : インターネット上の画像の表示 / AsyncTask


PHP

PHP + cURL で、Twitter API 1.1 の search/tweets を呼び出して、RSS に変換する
Twitter アプリを登録して、バッチファイルで投稿 - NAVER まとめ



posted by at 2013-06-10 23:16 | プログラマ用 | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します