- 追加された行はこの色です。
- 削除された行はこの色です。
*redhat8.0付属のphpでpukiwiki1.4が実行できない [#v723040d]
-ページ: BugTrack
-投稿者: [[kosaki]]
-優先順位: 普通
-状態: 完了
-カテゴリー: その他
-投稿日: 2003-05-06 (火) 09:47:03
-バージョン: 1.4
**メッセージ [#nd2132ae]
redhat8.0のphpの問題か?
-------------------------------------------
[URL] ~
pukiwiki.php?plugin=stripbracket
[error message(ブラウザにいかのように表示される)] ~
Fatal error: Call to undefined function: mb_internal_encoding() in /var/www/html/pukiwiki/init.php on line 17
----
-1.3.4は実行できたけど、1.4を上書きインストールしたら、エラーがでるようになったよ。って意味です -- [[kosaki]] &new{2003-05-06 (火) 09:53:15};
-[[pukiwiki:RedHat]]参照。--enable-mbstring付きでリビルドする必要あり。 -- &new{2003-05-06 (火) 13:16:13};
-はい。要望ですね。1.3.xがredhatでもなんとか動くので1.4もなんとかしてほしいという。リビルドは敷居が高すぎるので -- [[kosaki]] &new{2003-05-09 (金) 09:58:27};
-[[PHP SAMPLES & TIPS>http://www.spencernetwork.org/]]の漢字コード変換(jcode_1.34.zip)を使用して、mb_*関数を提供するスクリプトを作ってみました。添付した&ref(mbstring.php);とjcode.phpsその他をpukiwiki.phpと同じところに置いて、pukiwiki.phpに以下のパッチを当てて試してみてください。 EUC-JPベースのPukiWikiで((遅いのを我慢すれば))ある程度は動くはずです。 -- [[ぱんだ]] &new{2003-05-09 (金) 13:46:13};
require('config.php');
require('link.php');
+require('mbstring.php');
--きっちりテストしたわけではないので、どんな不具合が出るかは予測不能です。あと、mb_encode_mimeheader()を実装していないので、articleのMAIL_AUTO_SENDを1にするとエラーになると思います。 -- [[ぱんだ]] &new{2003-05-09 (金) 13:49:38};
-mb_convert_variables と mb_detect_order が足りないようです。適当に追加してみたら動いているように見えます -- [[merlin]] &new{2003-07-01 (火) 17:19:24};
--[[置いてみました>http://s1.buttobi.net/martian666/]]。まだ 内容がありませんが ;) [[merlin]] &new{2003-07-02 (火) 00:29:32};
-私は、以下のようにしています。特に不具合は出ていません。但し、海外のレンタルサーバーで mb_string 無しだった為です。RedHat ではありません(OS は関係ないですけどね)。 -- [[三浦克介]] &new{2003-07-01 (火) 19:14:50};
*** init.php 22 Jun 2003 06:42:03 -0000 1.52
--- init.php 1 Jul 2003 10:08:14 -0000
***************
*** 16,22 ****
define('LANG','ja');
mb_internal_encoding(SOURCE_ENCODING);
mb_http_output(SOURCE_ENCODING);
! mb_detect_order('ASCII,JIS,EUC,UTF-8,SJIS');
// mb_detect_order('ASCII,JIS,UTF-8,EUC,SJIS'); // UTF-8を優先する場合
/////////////////////////////////////////////////
--- 16,22 ----
define('LANG','ja');
mb_internal_encoding(SOURCE_ENCODING);
mb_http_output(SOURCE_ENCODING);
! // mb_detect_order('ASCII,JIS,EUC,UTF-8,SJIS');
// mb_detect_order('ASCII,JIS,UTF-8,EUC,SJIS'); // UTF-8を優先する場合
/////////////////////////////////////////////////
***************
*** 145,151 ****
$cookie = sanitize($_COOKIE);
// ポストされた文字のコードを変換
! mb_convert_variables(SOURCE_ENCODING,'',$get,$post);
if (!empty($get['page'])) {
$get['page'] = strip_bracket($get['page']);
--- 145,157 ----
$cookie = sanitize($_COOKIE);
// ポストされた文字のコードを変換
! //mb_convert_variables(SOURCE_ENCODING,'',$get,$post);
! foreach($get as $tmpkey=>$tmpvalue) {
! $get[$tmpkey] = mb_convert_encoding($tmpvalue, SOURCE_ENCODING,'');
! }
! foreach($put as $tmpkey=>$tmpvalue) {
! $put[$tmpkey] = mb_convert_encoding($tmpvalue, SOURCE_ENCODING,'');
! }
if (!empty($get['page'])) {
$get['page'] = strip_bracket($get['page']);
#comment