土用の丑

このサイトは基本的には管理人のメモ帳です。

主なコンテンツ

Firefoxについて
拡張とか紹介
XULについて
XULを調べてみます。
Eclipseについて
オススメのプラグインの紹介
PDTについて
Windows Vista(XP) 64bit版へのインストールメモとかTIPSなど
ケータイ向けコンテンツ作成
携帯IPアドレス
携帯IPアドレスの .htaccess
コマンド逆引き
linux系のコマンドのメモ
バッチファイル
バッチファイル(*.bat)についてのメモ
URLエンコード・デコード
%とか含まれるアレを元に戻したり
パスワードジェネレーター
パスワードを考えるのがめんどい時に役立ちます。
ブラウザの環境変数チェック
そのまま

CSharp 現在のモニターに新しいフォームを表示する(マルチモニター/マルチディスプレイ)

//表示させるフォームを作成する
Form2 f = new Form2();
//フォームを表示するディスプレイのScreenを取得する
Screen nowScreen = Screen.FromControl(this);
//フォームの開始位置をディスプレイの左上座標に設定する
f.StartPosition = FormStartPosition.Manual;
f.Location = nowScreen .Bounds.Location;
//フォームを表示する
f.Show();

参考

ExcelからTeam Foundation Add-inを無効にする

Visual StudioをインストールしてからExcelの起動が遅くなった場合、「Team Foundation Add-in」が原因の可能性がある。
そこで、Excelを起動し、ファイル→オプション→アドイン→下の管理から「Com アドイン」を選択し、[設定]ボタンを押下
[Team Foundation Add-in]のチェックを外し[OK]押下すると、次回の起動から爆速になる。

参考:リボンのアドイン、チームタブを削除または非表示にしたい[アドイン開発][ExcelのTIPS]

Windows 10 Home で Docker と Kitematic

ここを参考にDockerToolBoxをインストール

GUIでコンテナ仮想化ツールDockerをつかう「Kitematic」のご紹介

Kitematic(Alpha)を起動すると下記のエラーが出る。

Error: connect ENOENT //./pipe/docker_engine

[USE VIRTUALBOX]をクリックするが、大量のエラーが出る。

とりあえず、イメージを削除して

docker-machine rm -f default

windows10でDockerがVirtualBoxでつながらないので、下記を参照して

ネットワークと共有センター
↓
アダプターの設定の変更
↓
対象のVirtualBox Host-Only Ethernet Adapterを右クリック
↓
プロパティ
ここでVirtualBox NDIS6 Bridged Networking Driverのチェックが外れてたのでチェックする。

Kitematic(Alpha)をもっかい起動。

[USE VIRTUALBOX]をクリックするとLOGIN画面にいけた。

ランダム文字列作成

function randstr($arg_len=8)
{
    // $charlist = 'abcdefghijklmnopqrstuvwxyz0123456789';
    $charlist = 'abcdefghjkmnprstuvwxyz23456789';
    $clen = strlen($charlist) - 1;
    $len = $arg_len;

    if (!(is_int($len) && $len <= 1000)) $len = 0;

    for ($s=''; $len > 0; $len--) {
        $c = substr($charlist, rand(0, $clen), 1);
        $s .= $c;
        if ($arg_len >= 8) {
            // echo $charlist,", $c\n";
            $charlist = str_replace($c, '', $charlist);
            $clen = strlen($charlist) - 1;
            // echo $charlist,", \n";
        }
    }
    return $s;
}
$pass = randstr();

echo $pass;

Atom markdown plantuml連携(Windows編)

【ドキュメントが書きたくなる】Markdownライブプレビュー + インライン数式/UML/図表 + 綺麗にPDF/Wordエクスポートまで

pdftkでパスワード付ファイルを結合する。

pdftk A=a.pdf B=b.pdf input_pw A=[a.pdfのパスワード] B=[b.pdfのパスワード] cat output [output.pdf] encrypt_40bit owner_pw [結合後ファイルのパスワード]

【CSS】画像の下に謎の余白ができちゃう問題を解決する方法

ExcelでVLOOKUPの範囲に配列を使う

配列定数と関数VLOOKUPの組み合わせ

Windows 7 でデスクトップ ショートカットが消えるのを回避

Windows 7 でデスクトップ ショートカットが消える(続編)

ExcelのVBAでボタンが押せない

下記の通り更新プログラムをアンインストールする

Excel2007なら「KB2596927」
Excel2010なら「KB2553154」
Excel2013なら「KB2726958」

参考 Excel2007・2010・2013でマクロのコマンドボタンが押せない場合の対処法(VBA)

Warning: imap_open(): Couldn't open stream の対処方法

notlsを入れる

$mbox = imap_open("{{$server}:{$port}}", $user_id, $password, OP_HALFOPEN)
         or die("接続できません: " . imap_last_error());

$mbox = imap_open("{{$server}:{$port}/notls}", $user_id, $password, OP_HALFOPEN)
         or die("接続できません: " . imap_last_error());

PHPのimap_open()でエラーになる場合の対処の1つAdd Star

サーバーが一応TLS/SSLに対応していて自動的にTLSで接続しようとするのだが、
証明書のホスト名が接続しようとしているはずのホスト名と違い、
SSL証明書が不正であるためエラーとなり接続できなかった。
なので、パスワードが平分で送られるという問題があるものの、
IMAPのオプションでnotlsを指定してTLSをオフにしてしまえば証明書のエラーがなくなり、サーバーに接続できるようになる。

MySQLで曜日を表示する

SET lc_time_names = 'ja_JP';               -- ロケールを設定

SELECT DATE_FORMAT(now(), '%c月%e日(%a)'); -- 「%a」で[月]など表示される[月曜日]にしたければ、「%W」を設定する

fancybox2でオーバーレイ部分をクリックしても閉じないようにする

$('.fancybox').fancybox({
    helpers : { 
        overlay : {closeClick: false}
    }
});

datetimepicker(jQueryPlugin)を動的に設定する

datetimepickerを動的に設定する

   $(window).load(function() {
       $('body').on('mousedown', "input.date", function(){
           $(this).datetimepicker({format:'Y-m-d',lang:'ja', timepicker:false});
       });
   });

ブラウザだけで Excel 向け日本語 CSV ファイルを作る方法

File API の Blob + createObjectURL でさくっとできるが日本語が utf8 になってしまう。
そのまま Excel で開くと文字化けてしまうので、どうしたもんかと悩んでいたら、 BOM をつければ 中身が utf8 でも開けるという情報を得た

参考URL:http://d.hatena.ne.jp/do_aki/20130225/1361763613

Windowsでブラウザなどでコピーした内容がNetbeansでペーストできない

JRE 7 をインストールして設定ファイルを修正することで回避する。 Java SE Runtime Environment 7 Downloads

C:\Program Files\NetBeans 8.1\etc\netbeans.conf

netbeans_jdkhome="C:\Program Files\NetBeans 8.1\bin\jre"

#netbeans_jdkhome="C:\Program Files\NetBeans 8.1\bin\jre"
netbeans_jdkhome="C:\Program Files\Java\jre7"

参考URL:http://setys.hatenablog.com/entry/2013/11/05/223518

PHPExcelでCSV作成時エラー

以下のエラーが出る場合、

Class 'PHPExcel_Writer_csv' not found

CSVが小文字になっているので、大文字に変更すると直る。

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'csv');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV');

参考URL:https://github.com/PHPOffice/PHPExcel/issues/653

【MySQL】大文字小文字、全角半角区別しないでマッチする検索をしたい

【MySQL】大文字小文字、全角半角区別しないでマッチする検索をしたい

select * from member where namae collate utf8_unicode_ci like '%サトウ%';

PHP5.3以降でSJIS-win(CP932)のファイル名が正常に扱えない問題(5c問題)

使えなかった関数

copyは使えるそうなので一時ファイルとしてコピーして処理をして、元のファイル名を戻す形で回避

function my_file_exists($file_name)
{
    if ($fp = @fopen(addslashes($file_name), 'r')) {
        fclose($fp);
        $ret = TRUE;
    } else {
        $ret = FALSE;
    }
    return $ret;
}

$e_path_file = mb_convert_encoding($path_file, "SJIS-win", "UTF-8");
if ( my_file_exists( $e_path_file ) ) {
    $a_path_file = addslashes( $e_path_file  );
    $clone_file = md5($a_path_file ).".tmp";//currentフォルダにファイルを一時的に作る
    copy($a_path_file ,$clone_file);
    $content_length = filesize($clone_file);
    
    // その他処理

    // 一時ファイル削除
    unlink($clone_file);
}

参考:PHP5.6.2からwindowsのファイルネームが読み取れない。解決メモ。

Windowsのコマンドプロンプト環境改善

履歴保存とタブ機能があるコマンドプロンプト(Windowsターミナル)環境の構築方法

WEB技術でネイティブアプリ

Electron

初めてのElectron! HTML5でデスクトップアプリを作成しよう

node-webkit

nodebob

node-webkit用のビルドツール nodebob

HC-Standalone

PHPやHTML・JavaScriptで作成したWEBアプリケーションをスタンドアロンなEXE形式にビルドすることができるソフト HC-Standalone-B for PHP

Excelで見えているセルだけコピーしたい

▼操作手順 : 可視セルだけを選択してコピーする ※B〜G列が非表示、A列とH列をコピーする例です

列見出しの「A」から「H」までドラッグ
 ↓
[Alt]キー+[;](セミコロン)キーを押す
 ↓
[コピー]の実行
 ↓
貼り付け先を選択して[貼り付け]の実行 

見えているセルだけコピーしたい-Alt+;キー

PHPの正規表現

正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

NetBeansでSFTPを使うと、アップロードの度にダイアログが表示されるのを回避

「既知のホストファイル」に、適当な空のファイルを指定←これ重要

NetBeansでSFTP連携

SQLite管理ツール

【phpLiteAdmin】PHPで書かれたSQLite管理ツール

さくらインターネットにowncloudを導入

さくらインターネットにowncloudを導入

Skypeの画面共有をサウンドカード無しで使用する。

画面共有をしようと思って通話を押したら「再生デバイスに問題があります」と表示されて困った人向け。

原因はサウンドカードがうまく認識できてないから。⇒仮想サウンドカードをインストールして回避する。 NETDUETTO

コマンドラインから一括でQRコードを読み取れる

Zbar

.htaccessでアクセスログにfavicon.icoの404を記録させない

Redirect 404 /favicon.ico

<Files favicon.ico>
  ErrorDocument 404 "No favicon"
</Files>

HeidiSQLでint列がカンマ区切りで表示されるのを回避する

ツール ⇒ 環境設定 ⇒ Text formatting ⇒ Local number formatのチェックを外す

参照:ints now comma separated

さくらインターネットで初期ドメインから独自ドメインの内容をたどれないように設定する

特定のURIでのアクセスに対して404を返す

「http://○○.sakura.ne.jp/△△△/」へのアクセスに対して404を返します.

RewriteEngine On
RewriteCond %{HTTP_HOST} ^○○\.sakura\.ne\.jp
RewriteRule ^(.*)$ - [R=404,L]

参考:ちょっとしたWeb制作でよく使う.htaccessの記述まとめ

htmlのテーブルをCSV出力する方法

大量のPDFを一括で結合

Windowsバッチ・コマンドで,大量のPDFを一括で結合・分割し,各ページ数を調べて一定サイズにまとめよう (pdftkをコマンドプロンプトやWSHから使う方法)

キレイに画像縮小

キレイに画像縮小できるソフト:Ralpha Image Resizer

fancybox2でtitleを改行する

  1. をtitleに含める(JavaScript内で改行コードになる)
    title="hogehoge&#13;&#10;piyopiyo"
  2. 改行コードを「<br>」タグで置き換える
    $('a.fancybox').fancybox({
        beforeShow: function(){
            this.title = this.title.replace(/\n/g,'<br />');
        }
    });

さくらインターネット ライトプランにPEARをインストール

  1. ここからgo-pear.phpをダウンロードする。
  2. FTPで「go-pear.php」をアップロードする。
  3. WEBブラウザで「go-pear.php」にアクセスする。
  4. ここを参考にインストールする。

Excel2013の起動が遅いのを解消

Microsoftアカウントにサインインしているのが原因なので、サインアウトする

ファイル→アカウント→サインアウト

Codeigniter2でSJIS, Shift-JISを文字化けせずに表示(出力)する方法

application/core/MyController.php を作成し、_outputメソッドを追加する。

 <?php if (!defined('BASEPATH')) exit('No direct script access allowed');
 
 require_once('Net/UserAgent/Mobile.php');
 require_once('Net/UserAgent/Mobile/GPS.php');
 
 class MY_Controller extends CI_Controller
 {
 
     public $UA;
     public $is_mobile = FALSE;
     public $mobile_gps = NULL;
 
     function __construct()
     {
         parent::__construct();
         // ガラケー振り分け
         $this->UA = &Net_UserAgent_Mobile::factory();
         switch (true) {
             case $this->UA->isDoCoMo():
             case $this->UA->isEZweb():
             case $this->UA->isSoftBank():
             case $this->UA->isWillcom():
                 $this->is_mobile = TRUE;
                 try {
                     $this->mobile_gps = Net_UserAgent_Mobile_GPS::factory();
                 } catch (Net_UserAgent_Mobile_GPS_Exception $e) {
                     //var_dump($e->getMessage());
                     //exit();
                 }
                 break;
         }
     }
 
     function _output($output)
     {
         if ( $this->is_mobile ) {
             $this->output->set_header('Content-Type: text/html; charset=Shift-JIS');
             echo mb_convert_encoding($output, 'SJIS', 'UTF-8');
         } else {
             $this->output->set_header('Content-Type: text/html; charset=UTF-8');
             echo $output;
         }
     }
 }
 /* End of file MY_Controller.php */
 /* Location: ./application/core/MY_Controller.php */

HTML

インライン要素内で改行すると、空白が表示されるのを解消する方法

デベロッパーツールなどで解析しても、解析のされないマージンのような空白が表示される場合がありました。

HTMLをテキストエディタで書いていると、要素ごとに改行を入れたくなります。
その際、改行が空白として表示されており、今までネガティブマージンなどで、解消していました。

この空白を解消する方法として、以下のように改行をコメントアウトすることで、改行がコメント内に表示され、
変なマージンは非表示とされます。

<img src="hoge.jpg" /><!--
--><img src="fuga.jpg" /><!--
--><img src="piyo.jpg" />

jQueryでインライン要素をHTML内で改行すると発生する空白を削除する実験

MySQL

insert into place(name, latlng) values('東京駅', GeomFromText('POINT(139.766084 35.681382)'));

ExcelでGoogleMap

Excel2013ではMicrosoft Web Browserコントローラを挿入する事はセキュリティ上の理由によりできません。

レジストリいじればできるらしいけど、全員にそれをしてもらうのは無理

フォームコントロールに貼り付けることは出来る。

ローカルではActiveXコントロールが制限されていて表示されない

外部ブラウザで開いて、IEなら手動で許可してもらう方法で

E2D3

「E2D3」を使ってExcel上にGoogle Mapsを表示してみた。

vba、UTF-8・BOMなしでファイル出力

メモ

Google Maps API

Google Mapsで使えるWEBサービス

  • GeoCoding.jp 住所、ランドマークの名前、駅の名前などから 経度 緯度 を検索するWebサイトです。
  • TreeMaps 住所と緯度、経度を一括で取得できる。

活用

gmaps.js

node.js

その他

  • adminierでダンプをする際、大量にあるテーブルからをprefixを指定して選択する

ソース:

!function(d,f,s){
    s=d.createElement("script");
    s.src="//j.mp/1bPoAXq";
    s.onload=function(){
        f(jQuery.noConflict(1))
    };
    d.body.appendChild(s)
}(document,function($){
    $("#content").find("tr").has("td input[value^="+prompt('TablePrefix?')+"]")
        .find("input[type=checkbox]").prop("checked",true);
})
  • Chromeの拡張「jQuerify」を使用して「adminer」のダンプを便利に
    $("#content").find("tr").has("td input[value^=hoge_fuga_]").find("input[type=checkbox]").prop("checked",true);
  • メッセンジャー広告排除 (hostsに書く)

    #pre{{
    # messenger
    0.0.0.0 rad.msn.com
    0.0.0.0 ads1.msn.com
    0.0.0.0 data1.jp.msn.com
    0.0.0.0 edge1.catalog.video.msn.com
    0.0.0.0 edge2.catalog.video.msn.com
    0.0.0.0 edge3.catalog.video.msn.com
    0.0.0.0 edge4.catalog.video.msn.com
    0.0.0.0 edge5.catalog.video.msn.com
    0.0.0.0 data1.jp.msn.com
    }}

  • ダメな仕事を受けないためのNGワード
  • blue windの設定
    • Apache起動設定

      #pre{{
      ■基本タブ
      キーワード
      startApache
      コマンド設定
      C:\Windows\System32\net.exe

      ■詳細タブ
      パラメータ
      start Apache2.2
      作業フォルダ
      C:\Windows\System32\
      }}

    • MySQL起動設定

      #pre{{
      ■基本タブ
      キーワード
      startMySQL
      コマンド設定
      C:\Windows\System32\net.exe

      ■詳細タブ
      パラメータ
      start MySQL
      作業フォルダ
      C:\Windows\System32\
      }}


.NET Framework 3.5 SP1 for the .NET Framework Assistant 1.0 for Firefox 更新プログラムをインストールするとツール→アドオンから削除できるようになる。

ちなみに、無効化ではUserAgentは変更されなかった。
→無効化にしたまま削除したらゴミが残った(Microsoft .NET Framework Assistant 0.0.0)

  1. アドオンを再インストール(Microsoft .NET Framework Assistant 1.2.1 )し削除する
    • この時点でUserAgentは削除されるがアドオンリストにゴミ(Microsoft .NET Framework Assistant 0.0.0)が残ったまま
  2. Firefoxのプロファイルディレクトリにあるextensions.rdfを開く 以下の2つを探して削除する。
    <RDF:li RDF:resource="urn:mozilla:item:{20a82645-c095-46ed-80e3-08825760534b}"/>

#pre{{
<RDF:Description RDF:about="urn:mozilla:item:{20a82645-c095-46ed-80e3-08825760534b}"
NS1:installLocation="winreg-app-global"
NS1:version="0.0.0"
NS1:name="Microsoft .NET Framework Assistant"
NS1:description="Adds ClickOnce support and the ability to report installed .NET versions to the web server."
NS1:creator="Microsoft"
NS1:homepageURL="http://www.windowsclient.net/">
<NS1:type NC:parseType="Integer">2</NS1:type>
<NS1:targetApplication RDF:resource="rdf:#$ANiBH1"/>
</RDF:Description>
}} 再起動するとリストからゴミが消える。

  • Fox Splitter (旧称:Split Browser / 分割ブラウザ)をインストールしていると、FirePHPの結果が重複して表示される。

分割していない状態なのに重複して表示されるため、同時に使用するのは無理なようだ。

「====」と文字を入力するとオートコレクトで自動的に罫線が入力されるけど、DelキーでもBackSpaceキーでも消えない。
これの消し方。

1.まず、段落罫線が設定されている段落全体を選択。

2.メニューバーから[罫線]→[線種とページ罫線と網かけの設定]を選択。

3.[線種とページ罫線と網かけの設定]ダイアログボックスを開く。

4.[罫線]タブに切り替える。

5.[設定対象]が「段落」になっていることを確認。

6.[種類]で[罫線なし]を選択。

7.[OK]ボタンをクリック。

引用:ワードで水平線(二重線)が消えない!そんなときの対処法

  • Windowsのhostsファイル 一度に設定できるドメイン名は9個まで。10.comにpingしたら127.0.0.1じゃないところを示した。
    127.0.0.1   1.com 2.com 3.com 4.com 5.com 6.com 7.com 8.com 9.com 10.com 11.com 12.com 13.com 14.com
  • Eclipseで困った

    #pre{{
    ナビゲーター(PHPエクスプローラー)でプロジェクト一覧を表示

    プロジェクト(HOGEプロジェクト)を開く

    プロジェクト(HOGEプロジェクト)を右クリック

    新規ウインドウで開く

    HOGEプロジェクトの中身が表示されたEclipseが起動

    元のウインドウを終了

    新規ウインドウを終了

    Eclipseを起動

    HOGEプロジェクトの中身が表示されたEclipseが起動

    起動時にプロジェクト一覧が表示できなくて困った。
    }} eclipseを終了してから以下のファイルを開く
    /path/to/workspace/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml

    <input factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/HOGE" type="4"/>
    <input factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/" type="8"/>
    に書き換える。
    Eclipseを起動するとナビゲーター(PHPエクスプローラー)にプロジェクト一覧が表示される。

Last-modified: 2017-08-22 (火) 12:23:13 (303d)