2010年05月04日


PHP : COM 経由の Oracle アクセスの簡単なコード

本来の ADO の機能が全て使えるわけでは無いので、いったん連想配列にフィールド名でデータを格納してから利用するのがいいと思います
<?
$Cn = new COM( "ADODB.Connection" );
$Cn->CursorLocation = 3;
$Rs = new COM( "ADODB.Recordset" );

$ConnectionString = "Provider=MSDASQL;";
$ConnectionString .= "DSN=Oracle11gMS;";
$ConnectionString .= "UID=lightbox;";
$ConnectionString .= "PWD=LIGHTBOX;";

$Cn->Open( $ConnectionString );

$Query = "select * from 社員マスタ";

$Rs->Open( $Query, $Cn );

$fld[$Rs->Fields[0]->name] = $Rs->Fields[0]->value;
$fld[$Rs->Fields[1]->name] = $Rs->Fields[1]->value;
$fld[$Rs->Fields[2]->name] = $Rs->Fields[2]->value;

print $fld["社員コード"]; 
print $fld["氏名"]; 
print $fld["フリガナ"]; 

$Rs->MoveNext();

$fld[$Rs->Fields[0]->name] = $Rs->Fields[0]->value;
$fld[$Rs->Fields[1]->name] = $Rs->Fields[1]->value;
$fld[$Rs->Fields[2]->name] = $Rs->Fields[2]->value;

print $fld["社員コード"]; 
print $fld["氏名"]; 
print $fld["フリガナ"]; 

$Rs->Close();
$Cn->Close();

?>


関連する Microsoft のリンク

接続 プロバイダ
CursorLocationEnum
Connection オブジェクトのプロパティ、メソッド、およびイベント
Recordset オブジェクトのプロパティ、メソッド、およびイベント


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

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

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

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

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


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

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

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

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

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