2014年8月31日日曜日

YouTubeやVimeoアカウントから、自動でウェブサイトを作成してくれる「Cinematico」

YouTubeやVimeoアカウントから、自動でウェブサイトを作成してくれる「Cinematico」  実際に試してはいないのですが、なかなか面白い切り口だなと思ったのでメモです。YouTubeやVimeoアカウントに動画をアップすると、勝手にウェブサイトも更新されるとのこと。オープンソースで、PHPで作成されています。



2014年8月30日土曜日

KDE Plasma 5がカッコイイ!

Linuxのデスクトップ環境KDE Plasma 5がカッコイイのです! 実際にインストールして試してみたわけではないのですが、映像を見た限りでは、かなり洗練されている印象です。MACを手にした喜びと同等の感動が味わえると言って良いのではないでしょうか。非力なPCでは、その素晴らしさを味わえないでしょうが(笑)。とにかく、ものすごく興味をそそられる仕上がりになっています。





2014年8月29日金曜日

音声を録音して簡単に共有できる「Clyp」

音声を録音して簡単に共有できる「Clyp」 実に簡単です。マイクへのアクセスを許可すると、音声を録音できて、オーディオを共有することが可能です。既に録音済みのものも、アップロードして利用することが可能。こういった共有サービスは、UIの操作性次第なところがありますが、このClypは、よく出来ています。

2014年8月28日木曜日

Ubuntu Serverで、cronの編集エディタをviに変更

Ubuntu Serverで、cronの編集エディタをviに変更してみました。エディタで編集すると、英語ですが、きちんとcronの説明文が表示されます。親切。

export EDITOR=vi && crontab -e 

# 他のエディタを選択肢たい場合
sudo update-alternatives --config editor
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command

m - Minute 0-59
h - Hour 0-23
dom - Day of Month 0-31
mon - Month 0-12
dow - Day of Week 0-7 (0と7は日曜日)

参考サイト
Changing default crontab editor(Ask Ubuntu)
hange default text editor for crontab to vim(Super User)

2014年8月27日水曜日

超軽量のPHPテンプレート「60行で作らないPHP用テンプレートエンジン」

超軽量のPHPテンプレート「60行で作らないPHP用テンプレートエンジン」を設定してみました。笑っちゃいけないけど、これ、実にイイです(笑)! 軽量テンプレートエンジンを見つけていたら、すぐに行き当たりました。軽くて、超シンプル。テンプレートの何たるかを教えてくれる、簡潔なテンプレートクラスです。キャッシュ機能もついています。

index.php
<?php
require_once('NoSixTemplate.php');
$template = new NoSixTemplate('design.php', 'template');
$template->set_data('title', 'テンプレートのサンプル');
$template->display();
?>
/template/design.php (/template/は、キャッシュファイルが作られるので、書き込み可能に。)
// そのまま出力
<p>#{$title}</p>

// サニタイジングして出力
<p>%{$title}</p>


参考サイト
60行で作るPHP用テンプレートエンジン(はてな匿名ダイアリーさん)

2014年8月26日火曜日

PHPで、簡易キャッシュ「phpFastCache」

PHPで、簡易キャッシュ「phpFastCache」 「簡易」と書きましたが、MemCachedAPCWinCacheなどと本格的にも利用可能です。今回は、ファイル形式のキャッシュを設定してみました。文字列、配列などをキャッシュしておくことが可能です。phpFastCache::getで、キャッシュデータを読み込み、phpFastCache::setで、キャッシュデータの設定と、操作も簡単です。

include("php_fast_cache.php");
// ファイル形式を指定
phpFastCache::$storage = "files";
// ファイルの保存先を指定
phpFastCache::$path = "/var/www/html";
// /var/www/html/cache.storage フォルダを準備し、書き込み可能に。

// キーワード「keyword1」のキャッシュデータを読み込み
$content = phpFastCache::get("keyword1");

if($content == null) {
    echo "キャッシュではありません。";
    $content = file_get_contents("http://www.phpfastcache.com/testing.php");
    // キーワードを「keyword1」に設定し、30秒間
    phpFastCache::set("keyword1",$content,30);
} else {
    echo "キャッシュです。";
}

echo "キーボードのF5キーを押して、リロードして試してみてください。";
echo $content;


参考サイト
phpfastcache - Simple Yet Powerful PHP Caching Class(GitHub)

2014年8月25日月曜日

ドメインネーム取得の際、各種ソーシャルメディアでも取得可能な名前かどうかを調べてくれる「namecheck.com」

ドメインネーム取得の際、各種ソーシャルメディアでも取得可能な名前かどうかを調べてくれる「namecheck.com」 今日、ウェブサイトとソーシャルメディアとの連携は必須となりつつありますので、こういったサービスを賢く利用して、最初から戦略的にネーミングしていくべきなのでしょう。検索スピードも速くて、よく出来ています。

2014年8月24日日曜日

サービスをつなぎ合わせて便利に活用できる「IFTTT」

サービスをつなぎ合わせて便利に活用できる「IFTTT」 便利な活用方法のレシピが多数紹介されています。電話やSMSとも連携できて、可能性は無限大。例えば、雨が降りだしそうな時、携帯にアラートメッセージを表示させるといったようなことが可能です。アイディア次第で、生活を豊かなものに変えてくれるでしょう。私には、使いこなせないような気がしていますが(笑)。



参考サイト
作りながら覚える「IFTTT」レシピの使い方活用講座!(全5回)(hoomeyさん)
IFTTTの使い方・レシピ集(NAVERまとめ)

2014年8月23日土曜日

迷路+パズルゲームの「Entanglement」

迷路+パズルゲームの「Entanglement」 パイプをつなげて、道を延ばしていこうという単純なものです。アジアンチックな音楽がリラックスさせてくれて、しばらくハマりました。行き詰まっている方、息抜きにどうぞ。時間を忘れて、気分転換させてくれること、間違いなし(笑)。

2014年8月22日金曜日

PHPの軽量URLルーター「ToroPHP」

PHPの軽量URLルーター「ToroPHP」を設定してみました。ソースが短いので、眼で追って、すぐに動きを把握できます。URLのルーティングを勉強するには、非常に良いと思います。オフィシャルウェブサイトが、消え去っているのが気になりますが(笑)。

index.php
<?php
require "./vendor/autoload.php";

ToroHook::add("404", function() {
  echo "Not found";
});

class HelloHandler {
  function get() {
    echo "Hello, world";
  }
}

class ProductHandler {
  function get($name) {
    echo "You want to see product:".$name;
  }
}

Toro::serve(array(
  "/" => "HelloHandler",
  "/product/:alpha" => "ProductHandler",
));
?>

2014年8月21日木曜日

Linuxコマンドで、ランダムなパスワードの作成

Linuxコマンドで、ランダムなパスワードの作成です。trコマンドを利用したものなど、良い感じだなと思います。覚えているのが難しそうですけど(笑)。

date | md5sum

date +%s | md5sum

date | sha256sum

date +%s | sha512sum

date +%s | md5sum | head -c 10 

date | sha256sum | head -c 8 

tr -cd [:alpha:] < /dev/urandom | head -c 15

tr -cd [:alnum:] < /dev/urandom | head -c 10

# 特におすすめ!
tr -cd [:alnum:][:punct:] < /dev/urandom | head -c 20
# 結果はこんな感じ
# x$5(okb$-XGQ(l46zQdM
# ^r5GCc{i@RV~,p)\O4]\
# @SB_(mGs8+=Fw<j7lAQ8
# $sdbu9\EJ%#S-wu.kE4r
# \l\j=Jf//f]LmHW#fpVP
# [#@VaHtR{=9T*sWSC+Qw
# 0:|Tnf|"[dBzxO-Il)0x
# $?U$(orFzvPm.^HV*=/P
# X$a'W\ABoGv?p]%2d?4@
# 9MK[t97Mry5&KM)4fP:M

tr -cd [:alnum:] < /dev/urandom | head -c 10 | md5sum | head -c 10

tr -cd [:alnum:] < /dev/urandom | head -c $(tr -cd 0-9 < /dev/urandom | head -c 1) | md5sum | head -c 10


参考サイト
9 Examples To Generate Random Password In Linux(LinOxide)
tr 文字を一括変換する(ITpro)
head ファイルの先頭部分を表示する(ITpro)
/dev/random(ウィキペディア)

2014年8月20日水曜日

PHPのURLルーティング用ルーター「PHRoute」

PHPのURLルーティング用ルーター「PHRoute」を設定してみました。簡易的なルーターですが、必要十分。コントローラーも書けますし、ちょっとしたサイトを作成するには、十分に使えると思います。気に入りました。

index.php
<?php
require './vendor/autoload.php';

$router = new Phroute\RouteCollector();

$router->any('/', function(){
  return 'Hello world.';
});

$router->any('/example', function(){
  return 'This is an example';
});

$router->any('/page/{id:\d+}', function($id){
  return 'page number is ' . $id;
});

$router->get(['/user/{name}', 'username'], function($name){
  return 'Hello ' . $name;
});

// Test
class Test {
  public function anyIndex()
  {
    return 'This is the default page /controller/index';
  }

  public function anyTest($param, $param2 = 'default')
  {
    return 'This will respond to /controller/test/{'.$param.'}/{'.$param2.'} with any method';
  }

  public function getTest()
  {
    return 'This will respond to /controller/test with only a GET method';
  }

  public function postTest()
  {
    return 'This will respond to /controller/test with only a POST method';
  }

  public function putTest()
  {
    return 'This will respond to /controller/test with only a PUT method';
  }

  public function deleteTest()
  {
    return 'This will respond to /controller/test with only a DELETE method';
  }
}
$router->controller('/controller', 'Test');


$dispatcher = new Phroute\Dispatcher($router);

try {
  $response = $dispatcher->dispatch($_SERVER['REQUEST_METHOD'], $_SERVER['REQUEST_URI']);
  echo $response;
  exit;
} catch (Phroute\Exception\HttpRouteNotFoundException $e) {
  print '<pre>' ;
  print_r($e) ;
  print '</pre>' ;
  exit;
} catch (Phroute\Exception\HttpMethodNotAllowedException $e) {
  print '<pre>' ;
  print_r($e) ;
  print '</pre>' ;
  exit;
}
?>
.htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]


参考サイト
Fast PHP Routing with PHRoute(SitePoint)

宇宙からの観測画像分析のため、NASAが協力者募集

宇宙からの観測画像分析のため、NASAが協力者募集とのこと。第1段階の初歩的な作業であれば、私にもできるかも(笑)。いつの世も、人海戦術に勝るものなしということなのでしょうか?!
  1. 第1段階は、専門知識を必要としない簡単な作業。画像に写っているのが市街地か夜空の星か、そのほかの物体なのかを目で見て分類する。
  2. 第2段階は「ナイト・シティーズ」。夜の街を撮った画像が地図上でどこに位置するかを特定する。
  3. 第3段階の「ロスト・アット・ナイト」は、最も高度な作業とされる。ISSから撮影した半径500キロの画像が、地球上のどこに当たるのかを捜し当てる。


参考サイト
NASA wants your help creating atlas of night-time photos(CTV News)
Space Station Sharper Images of Earth at Night Crowdsourced For Science(NASA)

2014年8月18日月曜日

世界の風向きや天候、海洋状況を示してくれる「earth」

世界の風向きや天候、海洋状況を示してくれる「earth」 アニメーション形式で動きを表示してくれるので、非常に把握しやすいです。科学的に貴重なデータを表示してくれていると思いますが、単に、風の動きを眺めているだけで、瞑想に浸りながら、心を落ち着けることができます。癒やしを必要としている方にも、是非、どうぞ。

2014年8月17日日曜日

Googleマップの埋め込み用iframeコードを取得できる「Embed Google Maps」

Googleマップの埋め込み用iframeコードを取得できる「Embed Google Maps」 シンプルで、直感的に操作できるので、誰でもするに利用できると思います。ソースを iframe 形式で提供してくれるので、JavaScriptがどうのこうのと悩む必要がないので、本当に万人向けです。

サンプルiframeコード
<iframe width="600" height="400" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" 
src="http://my.ctrlq.org/maps/#street|1|0|0|40.7045737|-74.0089673"></iframe>


2014年8月16日土曜日

Androidのプログラムコードサンプル「Codota」

Androidのプログラムコードサンプル「Codota」 Android用のプログラムコード例を検索できます。検索結果は、クローラによって抽出されたデータで、元になっている情報ソースは、700万ページと膨大です。会員登録すると、気になるソースコードを保存したりできて、Androidに特化したQiitaのようなサービスです。

2014年8月15日金曜日

PHP5のテンプレートエンジン「Dwoo」

PHP5のテンプレートエンジン「Dwoo」を設定してみました。Smarty互換とあります。それだと、Smartyを使った方が良いようにも思いますが、とりあえず(笑)。毛色の違うテンプレートエンジンを試したい方には、良いかもしれません。2.0は、dwoo-2.0beta.tar.gz と、今でもbetaが付いているところが、気になりますが。

php
// 読み込み
require './dwoo/lib/Dwoo/Autoloader.php';
\Dwoo\Autoloader::register();

$dwoo = new \Dwoo\Core();

// データの準備
$arr = array(
 array('id'=>1, 'name'=>'Jim'),
 array('id'=>2, 'name'=>'John'),
 array('id'=>3, 'name'=>'Bob'),
) ;

$data = array(
 'a'=>5, 
 'b'=>6, 
 'url'=>'https://github.com/emulienfou/dwoo',
 'user'=>'<a href="javascript:jsAttack()">EvilTroll</a>',
 'arr'=> $arr,
 );

// 出力
$dwoo->output('./template/index.tpl', $data);
/template/index.tpl(テンプレート)
{* コメント *}

{autoEscape on}

<p>{$a}</p>
<p>{$b}</p>
<p>{a $url class="external" /}<p>
<p>{$user}</p>

{foreach $arr val}
 <p>{$val.id} - {$val.name}</p>
{/foreach}

{/autoEscape}


参考サイト
Dwoo 2.x Documentation(GitHub)

2014年8月14日木曜日

PHPで、配列を等しく分割してくれる「array_chunk()」

PHPで、配列を等しく分割してくれる「array_chunk()」 複雑怪奇なデザインパターンに、どうやってページ送りのデータを対応させていこうかと、ひとしきり悩んだ末に辿り着きました。便利な関数です。もっと早く出会いたかった(笑)。

<?php
$input_array = array('a', 'b', 'c', 'd', 'e');
print_r(array_chunk($input_array, 2));
print_r(array_chunk($input_array, 2, true));
?>
結果がこちら。
Array
(
  [0] => Array
    (
      [0] => a
      [1] => b
    )

  [1] => Array
    (
      [0] => c
      [1] => d
    )

  [2] => Array
    (
      [0] => e
    )

)
Array
(
  [0] => Array
    (
      [0] => a
      [1] => b
    )

  [1] => Array
    (
      [2] => c
      [3] => d
    )

  [2] => Array
    (
      [4] => e
    )
)

2014年8月13日水曜日

PHPのtmpfile()で利用したファイル名を取得

PHPのtmpfile()で利用したファイル名を取得する方法です。stream_get_meta_data()を利用すると、配列でファイル情報が取得できます。あまり意味が無いかもしれませんが、興味を持ってしまったので、調べてしまいました(笑)。

$tmpHandle = tmpfile();
$metaDatas = stream_get_meta_data($tmpHandle);
fclose($tmpHandle);
print_r($metaDatas) ;
$tmpFilename = $metaDatas['uri'];
print $tmpFilename;
結果がこちら。
Array
(
    [wrapper_type] => plainfile
    [stream_type] => STDIO
    [mode] => r+b
    [unread_bytes] => 0
    [seekable] => 1
    [uri] => /tmp/phpJhMshD
    [timed_out] => 
    [blocked] => 1
    [eof] => 
)

参考サイト
Retrieve path of tmpfile()(Stack Overflow)

2014年8月12日火曜日

マウスとキーボードを異なるOS間で共有できる「Synergy」

マウスとキーボードを異なるOS間で共有できる「Synergy」 実際に利用してはいないのですが、面白そうだなと思ったので、メモ。Windows、Mac、Linuxと、文字通りOSの垣根を超えて利用できるようです。サーバー版とクライアント版があるようなので(?)、完全にIPネットワークのみでつながるものと思われます?

2014年8月11日月曜日

jquery-cookieが復活?

jquery-cookieが復活? 一度、消滅したような気がしましたが、勘違いだったのでしょうか。再び、jquery-cookieを利用して、その操作性に感激しました。やっぱり、便利です。

// 書き込み
$.cookie('the_cookie', 'the_value');
$.cookie('the_cookie', 'the_value', { expires: 7 });

// 読み込み
$.cookie('the_cookie');

2014年8月10日日曜日

RSSフィードからTwitterに投稿できる「Twibble」

RSSフィードからTwitterに投稿できる「Twibble」 よくあるツイッターへの投稿サービスですが、色々細かく設定できます。ハッシュタグなども追加できる模様。クリック状況の「Analytics」機能なども付いて、後発のサービスらしい充実ぶりです。

2014年8月9日土曜日

Linuxでパスワード生成コマンド「pwgen」

Linuxでパスワード生成コマンド「pwgen」です。覚えにくいパスワードの羅列が、なんとも素晴らしいです(笑)。apgより好みかも?

インストール
sudo apt-get install pwgen
ヘルプ
pwgen -help
Usage: pwgen [ OPTIONS ] [ pw_length ] [ num_pw ]

Options supported by pwgen:
  -c or --capitalize
        Include at least one capital letter in the password
  -A or --no-capitalize
        Don't include capital letters in the password
  -n or --numerals
        Include at least one number in the password
  -0 or --no-numerals
        Don't include numbers in the password
  -y or --symbols
        Include at least one special symbol in the password
  -s or --secure
        Generate completely random passwords
  -B or --ambiguous
        Don't include ambiguous characters in the password
  -h or --help
        Print a help message
  -H or --sha1=path/to/file[#seed]
        Use sha1 hash of given file as a (not so) random generator
  -C
        Print the generated passwords in columns
  -1
        Don't print the generated passwords in columns
  -v or --no-vowels
        Do not use any vowels so as to avoid accidental nasty words
実際に利用してみた感じ
pwgen -y -n -s -v
LM7?hV,] 5T*^l+&? 7c$\2[NB 9](,X,K" T@Ljd4$" x%{H-NJ2 mGK6~:X$ |+T'Qs6!
hgHl4-R] %:J=*7lq {]r[9Z"B ~9dnq6sX 3_/"x`H- b9<{'S._ ~bD5P=b+ 6=`g9V\&
N47?q8{( /qSlc,X4 57jGMp(x c2&2rv9R 4G>x3QS" !~sN:5ds \4kxl{"B nd7F=Z@]
\4FfmX&J R-87X&j[ zH-5Z*\` *^;Hn5kv P5;L4t%; k4=Jb2x. Jw[Z5vG_ NjwN;#5M
@8h'k(,G kxN|7D.x {|?Z>l.9 "N5qqJT$ BvXj.F7} ns^B4g!2 5pHS:$6q VlLk$p9?
jj5)PL7> C%6wtcLV !&8d?_S$ 8fK5{`@5 Hdb7fC(g VS|v3==` HDS2p$Dq 5'K(%|+-
6r6`+wW| w;x?\rL6 gKFv4q$^ lQq&4\Z) 2\nTJhT= KwtP5~#+ dFdrM@9S f^x2np\V
:R94RP,X ?cQrt;2x !VgM5Ws4 /"9f4_mP 2:gWtxK= g'"t5fQ% 8jp^cQ6< 2h=*V`g'
9N|XjMFB z9T*Hq*$ l{}R3&FB B2)QgP.. Q.58N:Vf j4>+{p#F qnnv(2sL Ng@K*3gq
W>w-dL9m zFKl:#5" 8b/4M,}8 [w37nX"= b=gw<%9S ]?\66%J6 VB2S|S5P T@G8+62x
r8vd'L%N ?JPq)33% $rv5~N3{ @}*J*b8X t3)'P\]6 @lSzm8mb G<66spLZ C48![dgP
?4C5mq__ 2vZ[}r3s ,QXq(5`N -v2n9`S. 6-db=N}F CZR\':J6 4^K"!8$? nV>_*9zh
#,@nz=B9 nmM(7{,^ H3hj]+,f Xvwq]jM2 z2J~#cTC (3"-}*N( 3k}"<|3X (BrDDq4$
@Q]GL}4B 5||5XX+D 3DDhM}LD -+D}b5/^ ?d9%r?HC P4NZ=pl? x}$3g+W3 G{$7|f*^
2:vr-L\b m*b=P:W8 $MJj+hP7 kmt3>"9F #C{3N[C_ 5L=S3:6R 2F'hQ/>_ VrV3x/3k
P$C+]2Jq DbR3_;2T Km$d5z[m `Lt-zR9; mf}[6]W* "?M&5>m` \L9bxS|: *W4~{vn\
)@Q|#F6s q7r_-C!! 6"bMWQPB 2b/?F;P? DbXV>4]] \5s7.j5Z kJ]vV5GX VCn6/->L
n9T{)#4N M4sxf(MD S?xt8~]2 b57D;%qt CM#%c4n@ :Q8fJ~m< +T3LCg@4 #kk#Wd2n
CBj4BXR~ jh3p&Fjl \h32/t<Q 8]BKN2.w hMN`Q]H5 B5#@Mgsh tRk9#_C| K(:4!p_8
7qqWw]^) xJ-'?`7= QqQ\&r=7 =b,F9(9h lp>cdD.3 8,tgG|Lk =d&9HRQ/ P2,D+':q

参考サイト
pwgen(1)(Linux man page)

2014年8月8日金曜日

Linuxでパスワード生成コマンド「apg」

Linuxでパスワード生成コマンド「apg」をインストールしてみました。覚えやすいように、読み方も同時に表示してくれるところが気に入りました。

インストール
sudo apt-get install apg
ヘルプ
apg -h

apg   Automated Password Generator
        Copyright (c) Adel I. Mirzazhanov

apg   [-a algorithm] [-r file]
      [-M mode] [-E char_string] [-n num_of_pass] [-m min_pass_len]
      [-x max_pass_len] [-c cl_seed] [-d] [-s] [-h] [-y] [-q]

-M mode         new style password modes
-E char_string  exclude characters from password generation process
-r file         apply dictionary check against file
-b filter_file  apply bloom filter check against filter_file
                (filter_file should be created with apgbfm(1) utility)
-p substr_len   paranoid modifier for bloom filter check
-a algorithm    choose algorithm
                 1 - random password generation according to
                     password modes
                 0 - pronounceable password generation
-n num_of_pass  generate num_of_pass passwords
-m min_pass_len minimum password length
-x max_pass_len maximum password length
-s              ask user for a random seed for password
                generation
-c cl_seed      use cl_seed as a random seed for password
-d              do NOT use any delimiters between generated passwords
-l              spell generated password
-t              print pronunciation for generated pronounceable password
-y              print crypted passwords
-q              quiet mode (do not print warnings)
-h              print this help screen
-v              print version information
実際に利用してみた感じ
apg

Please enter some random data (only first 8 are significant)
(eg. your old password):>
ibNec4Otvarj (ib-Nec-FOUR-Ot-varj)
cecWytveiv0 (cec-Wyt-veiv-ZERO)
SarkAikfov5 (Sark-Aik-fov-FIVE)
Myvadinab2 (My-vad-in-ab-TWO)
arcEfvug2 (arc-Ef-vug-TWO)
klachOubr6 (klach-Oubr-SIX)

参考サイト
Linux上でパスワードに使えそうな文字列を生成する(どんごどんごさん)
apg(1)(Linux man page)

2014年8月7日木曜日

HTMLコンテンツを使えるjQueryのモーダルウィンドウ「jQuery Modal」

HTMLコンテンツを使えるjQueryのモーダルウィンドウ「jQuery Modal」 HTMLを自由に書き込めるものはないかなと思い探していたら見つけました。元のHTMLソースに直接書き込めるので、簡単。

<link rel="stylesheet" href="jquery.modal.css" type="text/css" media="screen" />

<script src="jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script src="jquery.modal.js" type="text/javascript" charset="utf-8"></script>

<p><a href="#ex2" rel="modal:open">オープン</a></p>

<form action="" class="login_form modal" id="ex2" style="display:none;">
  <h3>ログイン</h3>
  <p><label>ユーザーID:</label><input type="text" /></p>
  <p><label>パスワード:</label><input type="password" /></p>
  <p><input type="submit" value="ログイン" /></p>
</form>

2014年8月6日水曜日

SMTPサーバーを指定して送信できる「PHPMailer」

SMTPサーバーを指定して送信できる「PHPMailer」を設定してみました。GmailをSMTPサーバーとして利用することに。快適です。

mb_language("japanese");
mb_internal_encoding("UTF-8");

function sendmail($from, $to, $title, $body)
{
  $mail = new PHPMailer;

  $mail->CharSet = "iso-2022-jp";
  $mail->Encoding = "7bit";
  $mail->isSMTP();
  $mail->Host = 'ssl://smtp.gmail.com:465';
  $mail->SMTPAuth = TRUE;
  $mail->Username = 'samplename@gmail.com';
  $mail->Password = 'samplepassword';
  $mail->SMTPSecure = 'ssl';
  $mail->From = $from;
  $mail->FromName = mb_encode_mimeheader(mb_convert_encoding('送信者名',"JIS","UTF-8"));
  $mail->Subject  = mb_encode_mimeheader(mb_convert_encoding($title,"JIS","UTF-8"));
  $mail->Body     = mb_convert_encoding($body,"JIS","UTF-8");
  $mail->addAddress($to);

  if(!$mail->send()) {
    $error = $mail->ErrorInfo;
  } else {
    $error = null ;
  }
  return $error;
}


参考サイト
PHPMailerとJPHPMailerでSMTPサーバーからのメール送信(hogehoge foobar Blog Style5さん)
PHPMailerでGmailのSMTPを利用する(memo.xight.orgさん)

2014年8月5日火曜日

MySQLで、プライマリキーのないテーブルに、AUTO_INCREMENTで、プライマリキーを追加

MySQLで、プライマリキーのないテーブルに、AUTO_INCREMENTで、プライマリキーを追加です。あまり利用する場面は多くないと思いますが、どうやって追加するのか、わからずに悩んだので、メモ。知っていれば、なんということはないのですが。

ALTER TABLE samples ADD id INT PRIMARY KEY AUTO_INCREMENT;
参考サイト
Insert auto increment primary key to existing mysql database(Stack Overflow)

2014年8月4日月曜日

Skypeで弁護士に相談できる「Law Talk」

Skypeで弁護士に相談できる「Law Talk」 世の中、どんどん便利になっていますが、弁護士に相談するような敷居の高いことでも、もっと手軽にサービスを受けられると有難いものです。こういったサービスが増えてくれれば、より豊かで安心できる社会になるでしょう。素晴らしい。

2014年8月3日日曜日

写真をアップロードするだけで、ストーリー仕立てのスライドにしてくれる「Google+ Stories」

写真をアップロードするだけで、ストーリー仕立てのスライドにしてくれる「Google+ Stories」 家族や友人同士で、まとまった数の写真を共有する場合などに、便利に利用できるサービスだと思います。時系列ごとに写真を並び替えてくれますので、旅行の思い出などには最適でしょう。格好良く、自慢できること間違いなし(笑)。

こちらがサンプル

2014年8月2日土曜日

世界中のホテルの無線LANスピードを確認できる「Hotel WiFi Speed Test」

世界中のホテルの無線LANスピードを確認できる「Hotel WiFi Speed Test」 快適に泊まれることも重要ですが、今日、無線LANスピードもホテル選びの重要な要素でしょう。旅行シーズンには、要チェックのサイトです。日本のホテル情報も網羅されています。

2014年8月1日金曜日

PHPで、メモリー使用の確認「memory_get_peak_usage」

PHPで、メモリー使用の確認です。memory_get_peak_usage を利用すると、簡単に取得できます。パフォーマンスを突き詰めるには、参考にすべしですね。

function convert($size)
{
  $unit=array('b','kb','mb','gb','tb','pb');
  return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
}
echo convert(memory_get_peak_usage(true));

参考サイト
(主としてメモリ関連とかの)小枝(がるの健忘録さん)
memory_get_usage(PHP Manual)