IBM i(AS400)のQA質問サイト 「wakaranai (わからない)」
ただいまの質問       
107 
件
メンバー登録する
wakarana-iとは
ログイン
すべての質問
タグ
ユーザー
質問する
関連する質問
phpからAS400のdb2を参照すると、文字化けする
パラメータ上の半角カナが文字化けして、RPGを正常に実行できない
phpの実行で、一定の負荷が溜まると「文字化け」「ファイルオープン数の限界」等の問題が発生する
PHPでHTMLに表示するデータの一部が文字化けする
ZEND SERVER DB2接続について
PHPからDB接続する際のデータベース名について
ZendServerは、本当に無料で使えるのですか?
文字コード5026と5035の違い
phpからAS/400へのFTP送信
i5_commandでCCSIDを65535から5035に切り替えて確認する方法は?
おすすめの質問
PHP on IBM i (AS400)に関連する質問集
ZendServerのインストールとQCCSIDに...
Zendcore→ZendServerへのアップデート
ZendServerはV5R3で動作しますか?
ZendServerの管理者画面に入れません...
PHPから実行されるRPGのデバッグ
PHPからQTEMP上のファイルへのアクセ...
php実行時のログファイルについて
ZendServerでのPEARの利用について
コマンドライン(CLP)からのPHP実行
php.iniの場所(ZendServer)
by オムニサイエンス
スポンサー広告(質問)
PHP+RPGでAS400の基幹データを活用!簡単な照会画面から手軽に取り組めます。
open-omni.com
少しでもコストを抑えて手軽にAS400のオープン化に取り組めるツールとして、PHPの活用をお勧めします!
日本最大IBM i (AS400) 専門家集団 iBIアライアンス
www.ibiweb.gr.jp
会員各社のソリューション連携により、AS400におけるアプリケーション環境をトータルでご提供します。
OpenSource協議会-IBM i(AS400)へようこそ!OSSが拓くIBM i(AS400)の新たな世界!
i5php.jp
IBM i(AS400)のオープン化を中心として、オープンソースソフトの啓蒙と普及に努めています。
AS/400のクエリー定義をWebで|PHPQUERY for IBM i
phpquery.jp
PHP QUERYは、IBM i(AS400)上のクエリー定義をWeb画面から参照するデータ抽出ツールです。
wakaranai facebook fanpage
Twitter
Twitter
Facebook
Facebook
rss
RSS
PHPからAS400のデータベースにODBC接続時、半角カタカナが文字化けする
7 ヶ月
前に 質問(as/400)
465.tsuchida
200
pt
Tweet
Windows上のWebサーバーからAS400のDBに接続するWebシステムを構築しています。
(すでにAS400上で動作しているWebサーバーを、別なWindowsサーバーで動作させるための移植です)
言語はPHP、フレームワークとしてZendFramework3を使用しています。
下記内容でDBに接続していますが、クエリーの結果に含まれる日本語が文字化けします。
元々のシステムはUTF-8で動作しているため、UTF-8で処理したいのですが、半角カタカナの一部が文字化けし正常に動作しません。
$dsn = "odbc:DRIVER={iSeries Access ODBC Driver};SYSTEM=<IPアドレス>;DBQ=<DB名>;ccsid=1208";
$dbAdapter = new \Zend\Db\Adapter\Adapter([
'dsn' => $dsn,
'driver' => 'Pdo',
'username' => 'ユーザー名',
'password' => 'パスワード',
'driver_options' => array(
'PDO::ATTR_EMULATE_PREPARES' => 'false',
'PDO::ATTR_PERSISTENT' => 'true',
),
]);
dsnのccsidを以下のようにいろいろ試しましたが、UTF-8で文字化けしない状態にはなりませんでした。
ccsid=1208 //UTF-8:半角カタカナの一部が文字化け
ccsid=1200 //UTF-16:Webサーバーが動作しなくなる
ccsid=1041 //文字化け
ccsid=5026 //文字化け
ccsid=5035 //Exception発生
ccsid=942 //SJISでデータが返る(デフォルト値のようです)
ccsid=290 //文字化け
このODBCドライバを使用してUTF-8の日本語データを受け取ることは不可能でしょうか。
※参考:dsnにcharsetを指定しても無視されるようです。
(以下を指定しても、ccsid=942と同じ結果(SJIS))
charset=utf8
charset=sjis
※ccsid=942(SJIS)でデータを受け取り、UTF-8に変換するという方法も可能なようですが、最終手段と思われます。
※別なWindowsアプリケーションから、同じODBCドライバ"iSeries Access ODBC Driver"を使用してDB接続した場合は文字化けしません。
(SJISで処理していると推測)
php
ccsid
as400
文字化け
db2
zendframework
Tweet
7 ヶ月
前に 質問(as/400)
465.tsuchida
200
pt
0
as400
0
answers
回答数
ログイン
または
ユーザー登録
してからでないと
回答はご覧頂けません。