サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
世界禁煙デー
logic.moo.jp
Heroku上でヘッドレスWEBブラウザ phantom.js を使用するにはビルドパックを追加します。 ビルドパックをGithub上で公開してくれている方がいるのでありがたく利用させていただきます。 ● heroku-buildpack-phantomjs https://github.com/stomita/heroku-buildpack-phantomjs ターミナルから以下を実行 cd "アプリのあるディレクトリ" heroku login heroku buildpacks:add --index 1 https://github.com/stomita/heroku-buildpack-phantomjs git push heroku master ● phantomjs がHeroku上にあるか確認する heroku run phantomjs -v バージョンが帰ってく
ベクターデータのSVGファイルはRetinaディスプレイがどんどん増えてくる今後代替フォーマットが登場しない限り主流になってくると思われます。 ただし、<img>タグでSVGファイルを読み込むと色変更がCSSでできません。 (<SVG>タグとソースを直接貼り付ける必要がある) そこで desvg.js を使用します。 ● deSVG http://benhowdle.im/deSVG/ imgタグで埋め込んだ外部SVGファイルの色変更が出来るようになります。 <script src="path/to/desvg.js"></script> <script> $(function(){ deSVG('.my_svg', true); }); </script> <img class="my_svg" src="xxxxx.svg" width="26"> .my_svg path{ colo
・コメントアウト【 .iim ファイル】 ' 先頭がクォーテーションはコメントと見なされます ' コメント ' コメント ・2秒間ウェイトする(待つ)【 .iim ファイル】 WAIT SECONDS=2 ・全てのコマンド実行時に x秒間ウェイトする(待つ)【 .iim ファイル】 SET !REPLAYSPEED SLOW SET !REPLAYSPEED MEDIUM SET !REPLAYSPEED FAST SLOW : 2秒待つ MEDIUM : 1秒待つ FAST : 0秒待つ(待たない。) ・コマンドライン(URL,検索バー)からの実行 マクロ「mymacro.iim」を実行します。 imacros://run/?m=mymacro.iim 実は拡張子 .js のマクロも実行できます imacros://run/?m=mymacro.js� フォルダ「myfolder
● テンプレートの読み込みとディレクトリのセット(PHPファイルに記述) ※ Smarty require_once('Smarty/Smarty.class.php'); $smarty = new Smarty(); $smarty->template_dir = './templates/'; $smarty->compile_dir = './templates_c/'; ※ Twig require_once('Twig/Autoloader.php'); Twig_Autoloader::register(); $loader = new Twig_Loader_Filesystem("./templates/"); $twig = new Twig_Environment($loader, array( 'cache' => 'cache_twig', 'debug' =>
日本語が入った正規表現を使って検索、置換を行うには preg_match , preg_replace を使う その際文字化けが起こってしまうことが多いが、原因は【/】をエスケープし忘れている ところにあると思うので、【/】はきちんとエスケープしよう。 1 日本語エンコードを指定する mb_regex_encoding('UTF-8'); // もしくは SJIS, EUC-JP 2 検索する文字( $find_text )と区切り文字(/)はあらかじめエスケープしておく $find_text = preg_quote($find_text, '/'); 3 正規表現を使って置換を行う $string=preg_replace("/($find_text)/", "置換する文字列",$string ); これで文字化けもおこらないと思います。 エンコードUTF-8で日本語を使う場合は u
アカウント【root】 パスワード【pass】 DB名【mydb】 でパスワード入力もコマンドラインに書いてしまうには mysql -uroot -ppass mydb [Enter] でOK。 この例にならって mysqlのバックアップをコマンドライン1行で行うには、 アカウント【root】 パスワード【pass】 DB名【mydb】 バックアップファイル名【backup.dump】 mysqldump -uroot -ppass mydb > backup.dump [Enter] でOK。 ● ヒストリーにパスワードを残さないようにする方法。 .bash_profile に保存して再ログイン、または直接実行 export HISTCONTROL=ignorespace これでコマンドの先頭にスペースをつけるとhistoryに記録しない設定ができました。 この状態で先頭にスペースをつけ
JavaScript(jQuery)でリッチテキスト編集できるライブラリを探してみる。 ■ cleditor(jQueryプラグイン) http://premiumsoftware.net/cleditor/ ■ jwysiwyg(jQueryプラグイン) https://github.com/akzhan/jwysiwyg (ダウンロード) http://akzhan.github.com/jwysiwyg/help/examples/ (デモ) ■ Yahoo! UI (おすすめ) http://developer.yahoo.com/yui/editor/ http://developer.yahoo.com/yui/examples/editor/flickr_editor.html ■ open wysiwyg (Safari2×) http://www.openwebware.
DOM要素をJavaScriptで削除するには次のようにします。 次のような html 構造になっている場合 <div id="hoge"> <div id="aaa">テストA</div> <div id="bbb">テストB</div> <div id="ccc">テストC</div> </div> id="hoge" を削除するには _delete_element('hoge'); function _delete_element( id_name ){ var dom_obj = document.getElementById(id_name); var dom_obj_parent = dom_obj.parentNode; dom_obj_parent.removeChild(dom_obj); } 子要素 id="aaa" id="bbb" id="ccc" を削除するには次
MySQLにはクエリキャッシュの機能があり、これをONにするとクエリ結果をキャッシュから読み出すことが出来て高速な動作が期待できる。 1.まず現在クエリキャッシュが有効かどうかを調べる show variables like 'query_cache_%'; +------------------------------+---------+ | Variable_name | Value | +------------------------------+---------+ | query_cache_limit | 1048576 | | query_cache_min_res_unit | 4096 | | query_cache_size | 0 | | query_cache_type | ON | | query_cache_wlock_invalidate | OFF |
● ファイルやディレクトリ容量を表示させるには du -h ディレクトリ名 du -h -s ディレクトリ名(指定したディレクトリのみ表示) du -h -a ディレクトリ名(一覧表示) ● 容量の大きいディレクトリを発見する 容量の大きいディレクトリを発見するにはルートディレクトリから grep で ・ギガバイト以上のディレクトリを表示 du -h | grep [0-9]G ・100Mバイト以上のディレクトリを表示 du -h | grep [0-9][0-9][0-9]M とするといいでしょう ● ディスク全体の残り容量を表示するコマンドは df -hT です。 ● ディスク容量の残りが少なくなってきたときにチェックするとよいディレクトリ 真っ先にチェックすべきはこのディレクトリです /var/log/ ブルートフォースアタック(総当たり攻撃)を受けている場合ログのサイズが飛躍的に大
macやunixのターミナルであるディレクトリ以下の合計ファイル数を知るには ● 合計ファイル数: ls -laR | grep -c '^-' ● 合計ディレクトリ数: ls -laR | egrep -c '^d.+[^.]$' でいけます。 なおディレクトリ以下に作成するファイル数は 5000以内 にとどめておいたほうがでしょう。 関連: ファイル・ディレクトリ容量やディスクの空き容量を取得する http://logic.moo.jp/memo.php/archive/97/
SSHへのブルートフォースアタック(ID, PASS 総当たり攻撃)は必ず経験する攻撃の一つです。 ブルートフォースアタックへの対応策(ID,PASSでのSSHログインを不可にする)は必ずしておきましょう。 ● SSHへのブルートフォースアタックの確認 ブルートフォースアタックを受けていることを確認するにはログファイルを確認します。 まずログファイルの場所を確認し、そのログファイルを参照します。 cat /etc/syslog.conf Fedora や CentoOSの場合下記コマンドで確認できます。 cat /var/log/secure | grep "Invalid user" cat /var/log/secure | grep "Failed password" cat /var/log/messages | grep "failure" webmin で見る場合 【システム】
ドラッグ、ドロップでテーブルやリスト要素を順番変更する【jQuery UI Sortableモジュール】というのがあります。 ● JQUERY SORTABLE http://jqueryui.com/demos/sortable/ http://jqueryui.com/download ←ダウンロードはこちら js <script type="text/javascript" src="jquery.min.js"></script> <script type="text/javascript" src="jquery-ui-1.8.xxxxx.js"></script> <script type="text/javascript"> $(function(){ $("#sortable").sortable({ revert: true , cursor : 'move' , tol
PHPで画象を切り抜き・縮小し、サムネイルを作成するには次のパッケージを使用するのが簡単でおすすめです。 ● 画像切り抜きパッケージ intervention/image - Packagist(★6067) eventviva/php-image-resize - Packagist(★425) ● intervention/imageの使い方 1. intervention/image のインストール composer require intervention/image 2. intervention/image の使い方 use Intervention\Image\ImageManagerStatic as Image; require_once __DIR__ . '/vendor/autoload.php'; // Resize By intervention/image $
下記の用に JavaScriptで端末を判別してからそれぞれにセットしたい viewport を追加します。 下記の例では iPhoneの時 499px iPad の時 999px にセットしています。 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function(){ if(navigator.userAgent.indexOf('iPhone') > -1){ jQuery("head").append(jQuery('<meta name="viewport" content="width=499,
シェルコマンドを実行する関数は ・shell_exec() もしくは バッククォート(`)でコマンドを囲む ・passthru() ・system() ・exec() ・popen() ・proc_open() と6つありますが、 それぞれの違いは ・shell_exec() 「実行結果の出力がテキスト」のコマンドを実行する場合に使用する ・passthru() 「実行結果の出力がバイナリ」のコマンドを実行する場合に使用する ・system() コマンド実行結果のうち最後の一行だけ取得 ・exec() コマンド実行結果を指定した変数へ返す(配列で取得) ・popen() プロセスへのファイルポインタをオープンする ・proc_open() プロセスへの入出力用ファイルポインタを開く ・shell_exec()【コマンド実行結果を全て取得】(スカラーで取得) ・pass
正規表現を使って行を検索するには WHERE REGEXP '正規表現' とする。 例 SELECT id , artist_name FROM artist_dt WHERE artist_name REGEXP '^[a-z]+$'; また、エスケープシーケンス(\)を使う場合、シーケンスが1つの場合はMySQLに対するエスケープとみなされますので、正規表現としてのエスケープとする場合は2つ並べることになります。 バックスラッシュにマッチ SELECT '\\' REGEXP '\\\\'; ドット(正規表現ではなく文字としてのドット)にマッチ SELECT '.' REGEXP '\\.'; シングルクォートにマッチ SELECT '\'' REGEXP '\''; ■ 注意 MySQLでは日本語を含む正規表現は使用できません。 無理やり使う場合は下記のように記述します × arti
MySQLのデータを<b>直接データファイル群から復元</b>するには以下のようにする。 1. データのバックアップ MySQLのデータは /var/lib/mysql/DB名/ にあるので(RedHat系Linuxの場合)直接(/DB名/)以下の全データを保存してバックアップする。 2. データの整合性のチェック myisamchk *.MYI myisamchk *.MYI | grep worning 3. データのリストア リストアしたいマシンの /var/lib/mysql/ 以下に直接データディレクトリをコピーする。/var/lib/mysql/DB名) また権限は 所有者:mysql グループ:mysql ディレクトリ「DB名」の権限:700(drwx------) 「DB名」内のファイルの権限:660(-rw-rw----) とすればよい。 4. mysqlの権限が厳密で気
■ 1. SafariやFirefoxのWebpage Previews作成をOFFにしてHDD負荷を下げ速度を速くする。 SafariやFirefoxはWEBページにアクセスするごとにそのページを画像にして保存します。 これはTops SitesやCoverFlowの時に利用されます。 もしこれらを利用しないなら画像生成をストップさせることでHDD負荷を下げ速度を速くすることができます。 またディスク容量も節約できます。 Safariのサムネイル作成停止【ターミナルから以下のコマンドを実行】 defaults write com.apple.Safari DebugSnapshotsUpdatePolicy -int 2 Firefoxのサムネイル作成停止 1. firefoxのアドレス欄に【about:config】と入力してenter 2. 検索欄から【browser.pagethu
外部JavaScriptファイルを動的に読み込みWEBサイトを高速にしましょう! JavaScriptは通常の<head></head>タグ内に記述しますが、この場合HTML描画前にJavaScript読み込みが発生し、またJavaScriptの読み込みが終わるまで待機しているので、読み込み終わりを待ってからでないとHTML描画は開始されません。 そこで外部JavaScriptファイルを動的(HTMLレンダリングと同時、またはDOM Ready時)に読み込むよう変更します。 ■ 方法1-1. async をつけて読み込む 今までJavaScriptは以下のように読み込んできました。 <script src="myfile.js"></script> これに async を追加します <script src="myfile.js" async></script> これで非同期読み込みとなり、
Windows版IE6, IE7, IE8 での<label>タグがきかない不具合に対応する。 チェックボックスやラジオボタンの様にクリックするのが小さいフォームを作るときは、 フォームの横の文字もクリック出来るようにしておくととても便利です。 それを実現するのが<label>タグなのですがIEでは以下の2つの不具合があります。 ■ 1.IE6では<label></label>でテキストを囲んだだけでは動作しない 以下のコードはIE6では動作しません。 <label><input type="checkbox" />チェックボックス1</label> <label><input type="checkbox" />チェックボックス2</label> 以下のように全ての<checkbox>にidをセットして、<label>タグでそのIDを指定します。 <input type="checkbo
とこれが Windows IE8 7 6 ではこのプロパティは認識されません。 そこで以下のjQueryプラグイン ■ jquery.backgroundSize.js (要 jQuery バージョン1.7.0以降 ) http://louisremi.github.com/jquery.backgroundSize.js/demo/ ■ 使い方(<div class="hoge">に { background-size : cover; } を適用する。) <script type="text/javascript" src="jquery.js"></script> <!--[if lte IE 8]> <script type="text/javascript" src="jquery.backgroundSize.js"></script> <script> jQuery(docu
JavaScriptには変数になんらかの値が入っているかどうかを検知する関数【isset】がありませんので 下記のようにして作成しておくと何かと便利になります。 function isset( data ){ return ( typeof( data ) != 'undefined' ); } 検証コード(JavaScript) var A = 0; check_isset(A,'Aをテスト:'); var A = -1; check_isset(A,'Aをテスト:'); var A = false; check_isset(A,'Aをテスト:'); var A = null; check_isset(A,'Aをテスト:'); var B; check_isset(B,'Bをテスト:'); var C=[]; check_isset(C,'Cをテスト:'); var D=new Arra
■ iphoneのsafariでソース表示するにはブックマークレット(ブックマーク)を使用します ↑このページを表示後(Not Found になりますが気にせずに!)ブックマークに登録。 それからブックマークを編集してアドレスの先頭の【 http://a.a/ 】を取り除きます。 【javascript:】で始まるようにする。 これで準備OK。 あとはソースを表示させたいページに行ってこのブックマークを選択すればソースが表示されます。 なおアプリでは ■ ihtml iPhone、iPod touch、iPad 対応 iHTML ■ ihtml plus iPad 対応 iHTMLplus というアプリがあります。
Template-Toolkit(以下TT)での 一般的なループのさせ方は [%FOREACH value=loop%] 名前は:[%value.name%]です。 [%END%] このループのループ回数を利用して何か処理をしたい場合は予約オブジェクト「loop」というのが使用できる。 loop.size リストの要素数 loop.max 最後の要素のインデックス (size - 1) loop.index 0からmax()のうちの、現在の繰り返し処理のインデックス loop.count 1からsize()のうちの、現在の繰り返し処理のカウント(index() + 1) loop.first 現在の処理が一番最初の処理であれば真 loop.last 現在の処理が一番最後の処理であれば真 loop.prev リストのうち、一つ前のアイテムを返す loop.next リストのう
UNIXでのファイル名変更コマンドは mv file1.cgi file1.txt (file1.cgi を file1.txt という名前に変更する) ですが、これを一括でしようと思って mv *.cgi *.txt としてもエラーとなります。 そこで for文 を使って for fname in *.cgi; do mv $fname ${fname%.cgi}.txt; done とします 参考:http://www.atmarkit.co.jp/flinux/rensai/linuxtips/248chngext.html
以下のようにウィンドウサイズによって画像サイズを変更したい時があります。 ・画面サイズ(横幅)が800px 以下の場合は 800px固定 ・画面サイズ(横幅)が800px 以上の場合は 100%(横いっぱい) jQueryを使って以下のようにします。 <img id="hogehoge" src="./test.jpg" width="800" /> <script> function liquid_image(){ var wh = jQuery(window).height(); var ww = jQuery(window).width(); if (ww > 800){ jQuery('#hogehoge').css("width", "100%"); } else{ jQuery('#hogehoge').css("width", "800px"); } } jQuery(doc
● htmlだけでブラウザキャッシュを無効にする方法。 htmlの<head>内に以下のコードを追加 <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-store"> <meta http-equiv="Expires" content="-1"> ● 検索エンジンロボットにページ巡回、ページキャッシュさせないようにする。 <meta name="robots" content="noindex,nofollow,noarchive">
● HTML5ビデオを埋め込む <video id="videotest" width="640" height="480" controls="controls" preload="auto" poster="bg.png" onabort="log('abort');" oncanplay="log('canplay');" oncanplaythrough="log('canplaythrough');" ondurationchange="log('durationchange');" onemptied="log('emptied');" onended="log('ended');" onerror="log('error');" onloadeddata="log('loadeddata');" onloadedmetadata="log('loadedmetadata');
次のページ
このページを最初にブックマークしてみませんか?
『logic.moo.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く