2013年9月1日日曜日

jQuery mobile の data-rel="external"

<a> タグによるファイル・リンクで、確実にサーバのプログラム(php)を呼び出すように "external" という『おまじない』を書いているのだが、キーは rel= でも data-rel= でもよさそうで、その違いがよくわからなかったのだが、ひとつ大きな違いを発見した。
例えば
 <a href="linksaki.php?option=aaa" rel="external"> または ・・・ data-rel="external">
と書き、linksaki.php の中で
  <section data-role="page" data-url="<?php echo $_SERVER['SCRIPT_NAME']?>">
と書いたとき、ブラウザに表示されるurlは :

rel= のとき、http://・・・/linksaki.php?option=aaa

data-rel= のとき、http://・・・/linksaki.php

2013年8月20日火曜日

【PHP】 PHP と jQuery mobile の環境でリダイレクト

リダイレクトするには php で (何かを出力する前に)、

|  header("Location: url" );

と書いておけばよいのだが、一つ大きな問題がある。ブラウザが覚えているアドレスがリダイレクト先の url に変ってくれないので、みっともない上に F5 を押してページをリロードするともともページに戻ってしまう。
ブラウザに正しいアドレスを知らせるには url を相対アドレスではなく http:// から始まる絶対アドレスで指定すればよい、とものの本には書いてあるが、jQuery mobile が悪さをしているのか、残念ながら効果がない。
解消法を、やっと見つけた(たいへんうれしい)。「data-role="page"」の指定に例えば、

|  <section id="xxxx" data-role="page" data-theme="d"
|        data-url="<?php echo $_SERVER["SCRIPT_NAME"]?>">




と、data-url に自分のアドレスを指定してやればよい。

2013年8月8日木曜日

Dec2Hex : Excel で10進→16進変換

Excel で10進→16進変換をしようとするとアドインを追加する必要があるので、自分で作ってみたら簡単だった。

Function Dec2Hex(dec As Variant, Optional ByVal places As Integer = 4) As String
  Dec2Hex = Right(String(places, "0") + hex$(dec), places)
End Function

注) hex は Variant を、hex$ は String を返す。


Function Hex2Dbl(hex As String) As Double
  Hex2Dbl = CDbl("&H" + hex)
End Function

Function Hex2Lng(hex As String) As Long
  Hex2Lng = CLng("&H" + hex)
End Function