SQLの窓

2014年09月27日


VBScript : JavaScript のライブラリを呼び出して、Base64 エンコードを行う

世の中には、VBScript のサンプルよりはるかに JavaScriptで動作するものがたくさんあるので、VBScript より呼び出して利用します。

Javascript base64 - Javascript tutorial with example source code にあるソースコードを base64.js としてあらかじめ作成しておきます。そのファイルを、Google ドライブの共有で外部から参照可能にしておいて使用しています。

このサンプルは、WEB 関連の用途を前提としているので、日本語は UTF-8 に変換されたものが Base64 にエンコードされますので注意して下さい。
<JOB>
<SCRIPT language="JavaScript" src="https://e71762ff0667a838154428843724525602513494.googledrive.com/host/0B9Jymqpro6gSbTZnNHVOODFnTE0/base64.js"></SCRIPT>
<SCRIPT language=VBScript>

' 日本語は、UTF-8 でエンコードされた後に base64 でエンコードされます

str = ""
For I = 0 to 127
	str = str & Chr(I)
Next


strPhp = "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKiss"
strPhp = strPhp & "LS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJ"
strPhp = strPhp & "TVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eH"
strPhp = strPhp & "l6e3x9fn8="
if Base64.encode(str) = strPhp then
	MsgBox("一致しました")
end if

str = "VBScriptにはありませんが、JavaScriptにはたくさんのライブラリがあります!"
MsgBox(Base64.encode(str))

' **********************************************************
' PHP のコード
' **********************************************************
'$str = "";
'for( $i = 0; $i < 128; $i++ ) {
'	$str .= chr($i);
'}
'$str = base64_encode($str);
'print $str;
'

</SCRIPT>
</JOB>



タグ:Base64
posted by lightbox at 2014-09-27 22:37 | VBS + JavaScript | このブログの読者になる | 更新情報をチェックする

Google Chrome デベロッパーツールの Tips And Tricks

リロードボタン長押しでオプションメニュー



デベロッパーツールが開いている状態でのみ、メニューが表示されてリロード方法を選択できるようになります。特に、最後の『キャッシュの消去とハード再読み込み』は、ショートカットキーが無いのでこのメニューからのみ利用できます。

ドラッグ & ドロップで要素を移動



ドラッグで top_1 の div を移動中です。ドロップすると移動され、CTRL+Z で元に戻ります

CSS のカラーフォーマットをその場で変更表示

カラー部分を、SHIFT を押しながらクリックすると、フォーマットが切り替わって循環します。

複数の JavaScript ソースより文字列検索



JavaScript の整形



ソースのスペースの表示



▼ スペース


▼ タブ


コンソールから関数のブレイクポイント作成

debug( 関数名 )

インスペクト直後のオブジェクト参照

$0

dir( $0 )

表示された内容を右クリックして表示されるメニューから、要素タブの該当部分へ戻れます

console.log では、以下のフォーマット文字列が使えます

console.log('%cBlue! %cRed!', 'color: blue;', 'color: red;'); のように複数も可
Format SpecifierDescription
%sFormats the value as a string.
%d or %iFormats the value as an integer.
%fFormats the value as a floating point value.
%oFormats the value as an expandable DOM element (as in the Elements panel).
%OFormats the value as an expandable JavaScript object.
%cFormats the output string according to CSS styles you provide.
コンソールで IFRAME を選択

デフォルトでは、トップフレームなので IFRAME の中で作業したい場合に選択します



モバイルモード『Mobile emulation』で左上にフィットする



その他

コンソールでは、SHIFT+Enter で複数行可

copy コマンド( コンソールのみ ) でクリップボードへコピー

table コマンドと、console.table メソッド




タグ:Google Chrome
posted by lightbox at 2014-09-27 18:09 | Google Chrome | このブログの読者になる | 更新情報をチェックする

PHP : htmlentities : テキストエリアによるテキスト処理

テキストエリアで長いソースコード等を入力して保存する場合、読み込んで表示する時のみ htmlentities 変換してから TEXTAREA 要素で挟む必要があります。

変換結果の確認は、Google Chrome のコンソールで 『$("body > form > table > tbody > tr:nth-child(2) > td:nth-child(2) > textarea").innerHTML』です
<?php
header( "Content-Type: text/html; Charset=utf-8" );
header( "pragma: no-cache" );
header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );
header( "Cache-control: no-cache" );

// POST メソッドで送信された時のみ処理する
// ( URL から呼び出された場合は処理しない )
if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {

	if ( $_POST['send'] == '読み出し' ) {
		$text = @file_get_contents("./text.data");
		$text = htmlentities( $text, ENT_NOQUOTES, "utf-8" );
	}
	if ( $_POST['send'] == '書き込み' ) {
		file_put_contents("./text.data", $_POST['text'] );
		$text = htmlentities( $_POST['text'], ENT_NOQUOTES, "utf-8" );
	}

}

?>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>HTML雛形</title>
<style type="text/css">
* {
	font-family: "メイリオ","MS Pゴシック";
	font-size: 16px;
}
.column {
	border-style:solid;
	border-width:1px;
	border-color:#000000;
	padding: 4px;
}
</style>

<script type="text/javascript">
function submitForm() {
	if ( !confirm( "Submit ボタンで送信しますか?" ) ) {
		return false;
	}
	return true;
}
</script>

</head>
<body>

<form
	name="frm"
	method="post"
	action=""
	onsubmit='return submitForm();'
>
<table
	border=1
	style='
		border-collapse:collapse;
		border-style:solid;
		border-width:1px;
		border-color:#000000;
	'
>

<tr>
	<td class="column" colspan=2>
	<input
		type="submit"
		name="send"
		value="読み出し"
	>
	<input
		type="submit"
		name="send"
		value="書き込み"
	>
	</td>
</tr>

<tr>
	<td class="column">テキストエリア</td>
	<td class="column">
<textarea
	name="text"
	cols="60"
	rows="15"
><?= $text ?></textarea>
	</td>
</tr>

</table>
</form>


</body>
</html>





タグ:PHP htmlentities
posted by lightbox at 2014-09-27 16:20 | PHP + WEBアプリ | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します
container 終わり

フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
BUTTONS (CSS でボタン)
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり