#author("2020-07-20T22:57:28+09:00","","")
#author("2022-01-10T18:31:11+09:00","","")
* 編集しようとすると本文が空になることがある [#t6675dda]

- ページ: [[BugTrack]]
- 投稿者: [[umorigu]]
- 優先順位: 低
- 状態: 提案
- カテゴリー: 本体バグ
- 投稿日: 2021-12-17 (金) 8:36:07
- バージョン: 1.5.3

** メッセージ [#lded8abe]
ここだけかもしれませんが、たまに発生しています。

--------
- 自分も以前にあったのですが、本体がUTF-8でページがEUC-JPでエンコードされている場合、空になってしまいますね -- [[はいふん]] &new{2021-12-17 (金) 15:48:53};
 function get_source($page = NULL, $lock = TRUE, $join = FALSE, $raw = FALSE)
 {
 		(...)
 		if ($join) {
 			// Returns a value
 			$size = filesize($path);
 			if ($size === FALSE) {
 				$result = FALSE;
 			} else if ($size == 0) {
 				$result = '';
 			} else {
 				$result = fread($fp, $size);
 				if ($result !== FALSE) {
 					$encoding = mb_detect_encoding($result, ['UTF-8', 'EUC-JP'], true);
 					if ($encoding != "UTF-8")
 						$result = mb_convert_encoding($result, 'UTF-8', $encoding);
 					if ($raw) {
 						return $result;
 					}
 					// Removing Carriage-Return
 					$result = str_replace("\r", '', $result);
 				}
 			}
 		} else {
 			// Returns an array
 			$result = file($path);
 			if ($result !== FALSE) {
 				$encoding = mb_detect_encoding(implode("\n", $result), ['UTF-8', 'EUC-JP'], true);
 				if ($encoding != "UTF-8") {
 					foreach($result as $line) {
 						$result_tmp[] = mb_convert_encoding($line, 'UTF-8', $encoding);
 					}
 					$result = $result_tmp;
 					unset($result_tmp);
 				}
 				// Removing Carriage-Return
 				$result = str_replace("\r", '', $result);
 			}
 		}
 		(...)
 }
- ページのエンコーディングがEUC-JPでPukiWiki本体がUTF-8といった際でも正常に読み込めるようにget_source()内に変換するコードを試しにつくってみました。implodeを利用している等ちょっと処理が増加しそうな感じがあります -- [[はいふん]] &new{2021-12-17 (金) 23:16:54};
- 逆のパターンも検証してみたんですが、ページがUTF-8で本体がEUC-JPの場合も編集で空になってしまうようです -- [[はいふん]] &new{2021-12-17 (金) 23:27:31};
-- すみません。説明不足でした。このサイトで発生していることでしたので、文字コードがおかしいわけではないと思っています。数秒時間をおいてリロードすると本文が入ってきました。OSDNのプロジェクトWebサーバーのストレージはNFSなので、その辺に何かあるのかもしれません -- [[umorigu]] &new{2022-01-10 (月) 18:31:11};

#comment


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.083 sec.

OSDN