2011/04/20
ECCUBE2.4
ECCUBE2.4「更新情報の取得に失敗しました。」が表示される場合の修正方法
/data/class/pages/admin/LC_Page_Admin_Home.php
の248行以降を参照し、以下の通り編集してください。
編集・アップロード後に、管理画面にアクセスし、画面右側のカラムに更新情報が表示されていればOKです。
/** * リリース情報を取得する. * * @return unknown */ function lfGetInfo() { $query = ''; // TODO サイト情報の送信可否設定を行う if (true) { $query = '?site_url=' . SITE_URL . '&eccube_version=' . ECCUBE_VERSION; } $url = UPDATE_HTTP . $query; $jsonStr = @file_get_contents($url); // ここから if($jsonStr == false) { $jsonStr = $this->do_get($url); } // ここまで追加 $objJson = new Services_JSON; $arrTmpData = is_string($jsonStr) ? $objJson->decode($jsonStr) : null; if (empty($arrTmpData)) { SC_Utils_Ex::sfErrorHeader(">> 更新情報の取得に失敗しました。"); return array(); } $arrInfo = array(); foreach ($arrTmpData as $objData) { $arrInfo[] = get_object_vars($objData); } return $arrInfo; } // ここから function do_get($url) { $res = $this->get_contents($url); $res_array = explode("\r\n", $res); switch ($res_array[0]) { case 'HTTP/1.0 200 OK': case 'HTTP/1.1 200 OK': $ra = explode("\r\n\r\n", $res, 2); $res = $ra[1]; break; case 'HTTP/1.1 302 MovedTemporarily': foreach ($res_array as $res_row) { if (strstr($res_row, 'Location: ')) { $crr_url = str_replace('Location: ', '', $res_row); break; } } $res = $this->get_contents($crr_url); $ra = explode("\r\n\r\n", $res, 2); $res = $ra[1]; break; default: $res = ''; } return $res; } function get_contents($url) { $url_array = parse_url($url); $host = $url_array['host']; $path = $url_array['path']; if (array_key_exists('port', $url_array)) { $port = $url_array['port']; } else { switch ($url_array['scheme']) { case 'http': $port = 80; break; } } $query = $url_array['query']; $res = false; if (isset($host) && isset($port)) { $fp = fsockopen($host, $port, $errno, $errstr, 30); if ($fp) { $req = "GET " . $path . "?" . $query . " HTTP/1.0\r\n" . "Host: " . $host . "\r\n" . "\r\n"; socket_set_timeout($fp, 10); if (fputs($fp, $req, strlen($req))) { $res = ''; while (!feof($fp)) { $res .= fgets($fp); } } fclose($fp); } } return $res; } // ここまで追加
以上です。
ゼヒトモ内でのプロフィール: ROCKSTREAM, ゼヒトモのホームページ作成・制作サービス, 仕事をお願いしたい依頼者と様々な「プロ」をつなぐサービス
2024/08/20
神社
御朱印
2024/07/06
神社
御朱印
2024/07/06
神社
御朱印
2024/02/09
神社
2024/02/09
神社