艦これイベントも終ったし、幸か不幸かドロップ運のなさで新たに育成する艦もこれといってないんで
通常マップを進める事にした。とりあえず3-4と4-4をクリアして5面をす事が出来たんで、なんか書こうと思ったが…
2-4、3-2といった所謂壁マップと違って特に書くことも無いんだよね(ヽ’ω`)

■4-4
map4-4.jpg

▽クリア時構成:榛名改(77) 金剛改二(78) 赤城改(71) 那智改(44) 雪風(66) 島風(58)
▽ボス到達:4/6(撤退2)

駆逐x2 重巡x1でGまで確定。道中もボスもあまり強くはないし、羅針盤の機嫌が良ければ簡単やね。
ただイベント同様のゲージ式で4回は最低ボスを撃沈する必要があるから面倒なぐらいか。
それにしても、ゲージが回復しないってのがこんなに気楽なものだとは…。

■3-4

map3-4a.jpg

▽クリア時構成:榛名改(77) 金剛改二(78) 赤城改(71) 加賀改(71) 武蔵改(46) 陸奥改(58)
▽ボス到達:1/15(撤退9)

編成によるルートの固定がない自由すぎるマップだが、ゲージもないし楽勝だろ!と思って取り掛かったが…ここ敵が強いのな(;´Д`)
特にボス前Hポイントの敵構成が酷い。戦艦フラグシップx2、戦艦エリートx2が出ると中破に留めるのが絶望的。
ハイパーズで敵を減らす作戦でやってたが、ここでの大破帰還が多すぎるので…最終的にHPに物を言わせた戦艦4構成と
複縦陣クリティカルカットでごり押し。ボス自体は大したこと無いし、たどり着いてしまえばこっちのもんだ。
羅針盤があるとはいえ、ダメコン積んで何回かやれば余裕のマップなのかもしれない。

…さぁ5面だ。今のところ5-3までしか実装されてないみたいだし、そこまでクリアすれば一応踏ん切りがつく。
もう一踏ん張りか。

.htaccess でハマったのでメモ。

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^Itemdetails/(.*).html$ /Itemdetails.php?query=$1 [L]
RewriteRule ^ItemSearchForm/(.*).html$ /ItemSearchForm.php?query=$1 [L]
RewriteRule ^AuctionSearch/(.*).html$ /AuctionSearchForm.php?query=$1 [L]
RewriteRule ^Auctiondetails/(.*).html$ /Auctiondetails.php?auctionID=$1 [L]

ロリポップ、エックスサーバー、サクラサーバーの3つに同様の.htaccess指定をした結果…なぜかサクラサーバーだけ404を返す。

mod_rewritもApacheのverによって変わってくるが…原因がわからず4時間も格闘してしまった(´・ω・`)

/を消したり\を付けたりで解決した!って書いてるサイトがあったが…全く解決せず。。

結局のところ問題は

RewriteRule ^Itemdetails/(.*).html$ /Itemdetails.php?query=$1 [L]

Itemdetails/(.*).の先頭の文字が大文字だったのが問題だった様子。

RewriteRule ^itemdetails/(.*).html$ /Itemdetails.php?query=$1 [L]

こうしてあげたら動いた…こんな仕様あったんかよ(;´Д`)

以前もちょこっと書いたが…最近API取得関連の仕事を依頼される事が多い。

だが、基礎知識がなくて相変わらず訳がわからん。



で、大手API配信サイトは大抵サンプルコードを掲載してるので、それをちょこっと弄るぐらいでなんとか
茶を濁してきたが…

楽天のサンプルコードがJavascriptで表示するタイプで、意図した使い方ができず困っていたんだが、

グーグル先生で検索をかけるとソースコードを載せてくれてるサイトが結構あるもんで…ありがたい。



しかし楽天はあれど、楽天トラベルのコードを載せてる所が非常に少ないようだ。

API取得の自動更新サイトの流行はとっくに終っているためか、コード掲載サイト自体が減ってきてるんだけどね。

結局見よう見真似でコードを書いたんだが、一応検索はできてるっぽいんで、載せておこう。

クソみたいなコードなので殆ど自分用のメモだけど…一応こんな感じ。

◆楽天トラベルAPI取得 – travel.php

require './function_travel.php';

$file = 'http://api.rakuten.co.jp/rws/3.0/rest';

$devid = 'デベロッパーID';
$affid = 'アフィリエイトID';

$q = build_query();
$data = file_get_contents($file.$q);
$data= str_replace('header:Header', 'Header', $data);
$data = str_replace('KeywordHotelSearch:KeywordHotelSearch', 'KeywordHotelSearch', $data);
$xml = simplexml_load_string($data);

start();

// URLを取得します
$str = ($_SERVER["REQUEST_URI"]);

// キーワードの取得($queryに格納)
preg_match('/query=([^&"]+)/', $str, $match);
$query = urldecode($match[1]); // 日本語にデコード処理

echo "

{$query}の検索結果


"; // XMLからページステータスを取得します。 foreach($xml->Body->KeywordHotelSearch->pagingInfo as $pagingInfo){ $count = $pagingInfo->recordCount; $page = $pagingInfo->page; $first = $pagingInfo->first; $last = $pagingInfo->last; $pageCount = $pagingInfo->pageCount; echo "

検索HIT数:{$count} / {$first} ~ {$last} 件目 "; // ページャー if($page > 1){ echo '<-前の結果   '; } if($last <= $count){ echo '次の結果->'; } } echo "


\n"; // XMLから施設情報を取得します。ループ30回 foreach($xml->Body->KeywordHotelSearch->hotel as $hotel){ $hotelName = $hotel->hotelBasicInfo->hotelName; $hotelImageUrl = $hotel->hotelBasicInfo->hotelImageUrl; $hotelInformationUrl = $hotel->hotelBasicInfo->hotelInformationUrl; $hotelSpecial = $hotel->hotelBasicInfo->hotelSpecial; $address1 = $hotel->hotelBasicInfo->address1; echo ""; echo "\n"; echo "
"; echo "施設名:\n"; echo $hotelName; echo "\n"; echo "
"; echo "施設概要:\n"; echo $hotelSpecial; echo "
"; } done();

◆楽天トラベルAPI取得 – function_travel.php

function start() {
header('Content-Type: text/html; charset=UTF-8');

echo "
"; echo "検索ワード:"; echo "\n"; echo "
\n"; } function done() { exit; } function build_query() { global $devid, $affid; if(empty($_REQUEST['query'])) { start(); done(); } $q = "?developerId=$devid"; $q .= "&operation=KeywordHotelSearch&version=2009-10-20"; $q .= '&keyword='.rawurlencode($_REQUEST['query']); $q .= "&affiliateId=$affid&responseType=large"; if(!empty($_REQUEST['page'])) $q.="&page=".$_REQUEST['page']; return $q; }