2011年01月17日


PHP : ユーザクラスで MDB にアクセス

以下のクラスを使用しています

PHP : COM クラスでMDBへのアクセス( クラス化 )

<?
$conf_db_charset = "shift_jis";
$conf_client_charset = "euc-jp";

header( "Content-Type: text/html; Charset=$conf_client_charset" );
header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );

foreach( $_POST as $Key => $Value ) {
	$_POST[$Key] = str_replace("\\'", "'", $_POST[$Key] );
}

require_once( "db_mdb.php" );

// MDB に接続
$SQL = new DB( 'hanbaic.mdb' );
if ( $SQL->connect === false ) {
	
	$msg = "接続できませんでした<br>\n";
	$msg .= $SQL->error;
	print $msg;
}

if ( $_POST['send'] == '更新' ) {

	// 更新処理
	if ( trim($_POST['text']) != '' ) {

		if ( !$SQL->Execute( $_POST['text'] ) ) {
			$msg = "更新でエラーが発生しました<br>\n";
			$msg .= $SQL->error;
			print $msg;
		}

	}
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=<?= $conf_client_charset ?>" />
<title>MDB 更新</title>
<style type="text/css">
* {
	font-size: 12px;
}
.column {
	border: solid 1px #000000;
	padding: 4px;
}
.head_column {
	border: solid 1px #000000;
	padding: 4px;
	background-color: silver;
	font-weight: bold;
}
.err_column {
	border: solid 1px #000000;
	padding: 4px;
	color: blue;
	font-weight: bold;
}
textarea {
	width: 600px;
	height: 300px;
}
</style>

<script type="text/javascript">

// ****************************
// 更新確認
// ****************************
function checkForm() {
	if ( !confirm( "更新を行いますか?   " ) ) {
		return false;
	}
	return true;
}

</script>
</head>
<body>

<form
	name="frm"
	method="POST"
	onSubmit='return checkForm();'
>
<table border="1">
<tr>
	<td class="column">

	<textarea name="text"><?= $_POST['text']?></textarea>
	<br />
	<input
		type="submit"
		name="send"
		value="更新"
	>

	</td>
</tr>
</table>
</form>

<?

	if ( $SQL ) {

		$column = $SQL->QueryEx( "select * from 社員マスタ" );

		$str="<table border=\"1\">";
		while ( $column ) {

			$str.="<tr> \n";
			$str.="<td class=\"column\">{$column['社員コード']}</TD> \n";
			$str.="<td class=\"column\">{$column['氏名']}</TD> \n";
			$str.="</tr> \n";

			$column = $SQL->QueryEx( );
		}
		$str.="</table>";
		print $str;

		$SQL->Close();

	}

?>

</body>
</html>





タグ:PHP MDB com
posted by at 2011-01-17 18:30 | 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 %>
この記述は、以下の場所で使用します