#!C:\nadesiko\cnako.exe !ProgramPath="http://www.mtst.jp/nako/fon/n_fon.nako" !LogFile="{母艦パス}\search_log.dat" 経過ダイアログ=0 エラー無視 CNAKOモード=「CGI」 PNTとは配列。GPSPとは文字列。TTWとは配列 QUERY=クエリー取得 もしキャリア判定=「au」ならば   もしAND(QUERY@lat≠「」,QUERY@lon≠「」)=1ならば     #「+###」の「+」を削除     QUERY@latの1から1文字削除     QUERY@lonの1から1文字削除     #度分秒単位ならば     もしQUERY@unit=「0」ならば       QUERY@lat=DMS2DEG(QUERY@latの「.」を「」に置き換え)       QUERY@lon=DMS2DEG(QUERY@lonの「.」を「」に置き換え)     #日本測地系ならば     もしQUERY@datum=「1」ならば       TTW=TOKYO2WGS84(QUERY@lat,QUERY@lon)       QUERY@lat=TTW[0]       QUERY@lon=TTW[1]     GPSP=座標TO住所(QUERY@lat,QUERY@lon)     GD=近隣AP取得(QUERY@lat,QUERY@lon)     PNT=位置検索結果("測定",GPSP,GD[3],INT(GD[4]),GD[0],GD[1],GD[2]) もしキャリア判定=「softbank」ならば   #簡易位置情報   SQUE=『HTTP_X_JPHONE_GEOCODE』の環境変数取得   もしSQUE≠「」ならば     SQUE=SQUEを「%1A」で区切る     もしSQUE[2]をURLデコード=「位置情報なし」ならば       PNT=「位置情報取得失敗」     違えば       TTW=TOKYO2WGS84(SQUE[0],SQUE[1])       GD=近隣AP取得(DMS2DEG(TTW[0]),DMS2DEG(TTW[1]))       PNT=位置検索結果("測定",SQUE[2]をURLデコード,GD[3],INT(GD[4]),GD[0],GD[1],GD[2])   #GPS   違えば     もしQUERY@pos≠「」ならば       QUERY@posが「N(##.##.##.##)E(###.##.##.##)」に一致ならば         SQUE[0]=DMS2DEG(抽出文字列[0]の「.」を「」に置き換え)         SQUE[1]=DMS2DEG(抽出文字列[1]の「.」を「」に置き換え)         GPSP=座標TO住所(SQUE[0],SQUE[1])         GD=近隣AP取得(SQUE[0],SQUE[1])         PNT=位置検索結果("測定",GPSP,GD[3],INT(GD[4]),GD[0],GD[1],GD[2])       違えば         PNT=「位置情報取得失敗」 もしQUERY@address≠「」ならば   LAP=住所TO座標(QUERY@address)   もしLAP=「ERROR」ならば     PNT=「住所からの座標取得に失敗しました」   違えば     GD=近隣AP取得(LAP[0],LAP[1])     PNT=位置検索結果("検索",QUERY@addressからタグ削除,GD[3],INT(GD[4]),GD[0],GD[1],GD[2]) 「Content-type: text/html{~}{~}」を表示 「 FON_AP検索 --最も近くのFON_APを表示します--(070123)(端末:{キャリア判定})
ご利用は自己責任でお願いします。
携帯電話でアクセスすると位置情報からの検索をご利用になれます。(現在:au:GPS - SoftBank:GPS,簡易に対応)
住所検索での注意:〜丁目〜番地のように入力してください。
掲示板
利用させていただいているサービス

住所から検索:
{位置取得リンク}

{PNT}」を表示 RIP=「REMOTE_ADDR」の環境変数取得 もしGPSP≠「」ならば   もしLogFileをファイルロック=1ならば     「{GPSP[0]}[{RIP}][GPS][{キャリア判定}]{~}」をLogFileに追加保存   LogFileをファイルロック解除      もしQUERY@address≠「」ならば   もしLogFileをファイルロック=1ならば     「{QUERY@address}[{RIP}][FORM][{キャリア判定}]{~}」をLogFileに追加保存   LogFileをファイルロック解除 終了 ●位置検索結果(PT,SP,AP,AL,AA,AO,AR)   TTWとは配列=WGS842TOKYO(AA,AO)   AA=TTW[0]   AO=TTW[1]   「{PT}位置:{SP}

--AP情報--
場所:{AP}付近
距離:約{AL}m
緯度:{AA}
経度:{AO}
登録情報:{AR}

地図」を戻す ●位置取得リンク   もしキャリア判定=「au」ならば     「
AU
GPS情報から検索
」を戻す   もしキャリア判定=「softbank」ならば     「
SoftBank
2G 簡易位置情報から検索
3G GPS又は簡易位置情報から検索
」を戻す   もしキャリア判定=「pc」ならば     「

」を戻す   「」を戻す ●キャリア判定   もしQUERY@ualock≠「」ならば     QUERY@ualockを戻す   UAとは文字列   UA=『HTTP_USER_AGENT』の環境変数取得   もしUAで「UP.Browser」が何文字目≠0ならば     「au」を戻す   もしUAで「DoCoMo」が何文字目≠0ならば     「docomo」を戻す   もしUAで「J-PHONE」が何文字目≠0ならば     「softbank」を戻す   もしUAで「Vodafone」が何文字目≠0ならば     「softbank」を戻す   もしUAで「SoftBank」が何文字目≠0ならば     「softbank」を戻す   もしUAで「DDIPOCKET」が何文字目≠0ならば     「willcom」を戻す   もしUAで「WILLCOM」が何文字目≠0ならば     「willcom」を戻す   もしUAで「AH-J300」が何文字目≠0ならば     「willcom」を戻す   「pc」を戻す ●クエリー取得   Qとは文字列。Sとは文字列   ANとはハッシュ。FNとは文字列。FDとは文字列   Q=『QUERY_STRING』の環境変数取得   Qを「&」で区切るで反復     S=対象を「=」で区切る     FN=URLデコード(S[0])     FD=URLデコード(S[1])     AN@FN=FD   ANを戻す ●近隣AP取得(AT,NG)   DPとは配列。NDとはハッシュ。ADとは文字列   DP=「http://maps.fon.com/index.php?action=getNearestRouter&lat={AT}&lng={NG}」からHTTPデータ取得をUTF8_SJIS変換から「node」のタグ切り出し   DPの0を配列削除   ND=DPから「node」のタグ属性一覧取得   AD=DPから「address」のタグ切り出しの「![CDATA[」から「]]」まで範囲切り取るの「,」を「.」に置換えからタグ削除   「{ND@LAT}{~}{ND@LONG}{~}{AD}{~}{座標TO住所(ND@LAT,ND@LONG)}{~}{距離取得(AT,NG,ND@LAT,ND@LONG)}」を戻す ●座標TO住所(AT,ON)   DXとは配列   DX=「http://nishioka.sakura.ne.jp/google/ws.php?lon={ON}&lat={AT}&format=simple」からHTTPデータ取得をUTF8_SJIS変換   DXから「address」のタグ切り出しからタグ削除を戻す ●住所TO座標(S)   ADとは文字列。DAとは配列。LATとは文字列。LNGとは文字列   AD=SをSJIS_UTF8変換をURLエンコード   DA=「http://www.geocoding.jp/api/?v=1.1&q={AD}」からHTTPデータ取得をUTF8_SJIS変換   LAT=DAから「lat」のタグ切り出しからタグ削除   LNG=DAから「lng」のタグ切り出しからタグ削除   もしLNG=「」ならば     「ERROR」を戻す   「{LAT}{~}{LNG}」を戻す ●距離取得(AT1,ON1,AT2,ON2)   「http://lab.uribou.net/ll2dist/?ll1={AT1},{ON1}&ll2={AT2},{ON2}」からHTTPデータ取得をUTF8_SJIS変換から「distance」のタグ切り出しからタグ削除を戻す ●ファイルロック(ファイル名の|ファイル名を)   ロック名とは文字列=ファイル名のロックファイル名作成   成功とは整数=0   10回     ロック名が存在     もしそれ=0ならば       成功=1       ロック名にフォルダ作成       抜ける     違えば       0.5秒待つ   成功を戻す ●ファイルロック解除(ファイル名の|ファイル名を)   ロック名とは文字列=ファイル名のロックファイル名作成   ロック名が存在   もしそれ=1ならば     ロック名のフォルダ削除 ●ロックファイル名作成(Fで|Fの)   F=Fの「:」を「_」に置換の「\」を「_」に置換の「.」を「_」に置換   「lock-{F}」を戻す #度→度分秒 ●DEG2DMS(S)   DMSとは変数。RMとは実数。RM=(N)   DMS=FRAC(S)*60   もしSで3が何文字目=1ならば     RM=((N)*-1)   INT(S)&"."&INT(DMS)&"."&MID(((FRAC(DMS)*60)+RM),1,6)を戻す #度分秒→度 ●DMS2DEG(S)   Dとは実数。Mとは実数。Cとは実数。Aとは実数   もしSで3が何文字目=1ならば     D=MID(S,1,2)     M=MID(S,3,2)     C=MID(S,5,2)+(N)     A=(Sの1から6文字削除)   違えば     D=MID(S,1,3)     M=MID(S,4,2)     C=MID(S,6,2)+((N)*-1)     A=(Sの1から7文字削除)   D&"."&INT(((M*60000)+(C*1000)+A)/3.6)を戻す #Tokyo→WGS84 入力:度 ●TOKYO2WGS84(B,L)   「{B-(0.00010695*B)+(0.000017464*L)+0.0046017}{~}{L-(0.000046038*B)-(0.000083043*L)+0.010040}」を戻す ●WGS842TOKYO(B,L)   「{B+(0.00010696*B)-(0.000017467*L)-0.0046020}{~}{L+(0.000046047*B)+(0.000083049*L)-0.010041}」を戻す