2016.3.7 月
タグの設定 https://cse.google.co.jp/cse/ 自分のホームページなんかにGoogleの検索機能が付けられるというものです。むかしからあるんですが、だいぶ進化したので。 まずは適当なGoogleアカウントでログインして上記URLにアクセスしてみます。 検索するサイト 言語 検索エンジンの名前 検索オプション を入力して作成ボタンを押します。 コードが作成されるので、それを自分のHPに貼り付けます。 <script> (function() { var cx = '009503186892029741062:gpqstvi6va8'; var gcse = document.createElement('script'); gcse.type = 'text...
2016.3.6 日
数字 任意の桁の数字にマッチ preg_match("/^[0-9]+$/",$str); 0とか2345とか999とか数字は何でもマッチ。
2016.3.6 日
htmlspecialchars() http://php.net/manual/ja/function.htmlspecialchars.php 問題がなければENT_QUOTESでよいかと思います。もっと繊細にやりたい場合は文字コードを第3引数につけるとか。 シングルクオートとダブルクオートを共に変換します。 htmlspecialchars($input, ENT_QUOTES, "UTF-8"); HTMLの実体参照を用い、& を &amp; に、< を &lt; に、> を &gt; に、” を &quot; に、それぞれ置換する。 PHPではhtmlspecialchars関数を用いれば、一括で対策できる (ただしENT_...
2016.3.6 日
htmlのheadでリダイレクト metaでリダイレクトできます。htmlファイルそのものにアクセスした際に別のURLへリダイレクトします。同ホスト内の場合はルート相対でパスを書くだけでも大丈夫です。 <meta http-equiv="refresh" content="[秒];URL=[URL/PATH]"> この場合は5秒後に/sp/にジャンプします。 <meta http-equiv="refresh" content="5;URL=/sp/index.html"> Javascriptでリダイレクト 同ホスト内の場合はルート相対でパスだけ書いても大丈夫。 location.href='[URL]'; PHPでリダイレクト echoしたりvar_dumpする前...
2016.3.6 日
dumpのとき Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions… GTIDsを使ったデータベースのレプリケーションをしているときにDumpするとこういうWarnigが出たりします。ダンプデータ自体は落ちてくるので問題なし。GTIDはトランザクションに紐付いたIDなので、例えば開発環境と本番環境などでスキーマだけ移動させたいときなんかは特に必要ないです。いすれにしろレプリケーション自体あんまりやらないので滅多に出ないWarningではあります。 Warning: A partial dump from a server...
2016.3.6 日
Login 最近のバージョンでは-pの後にパスワードベタ書きができなくなったようです。-pPASSWORD こういうやつ。 -hのホスト名を省略すると自動的にlocalhostになります。 mysql -u [USERNAME] -p -h [HOSTNAME] DB DB名を表示する ログインしたユーザーが操作できる権限のDBが表示されます。rootだと全部。 mysql> show databases; DBを選択する DB選択しないと中身の操作できません。 mysql> use [DBNAME]; Table DB内のテーブルを表示する mysql> show tables; テーブル削除(要注意!) こっちは物理的にテーブルごと削除されます。 mysql> d...
2016.3.6 日
SEOという都市伝説があってこれは今も尚(ちょっと下火になったけど)存在しているのですが、今ではGoogle一人勝ちの検索ランキングの話になっております。いわゆるSEO対策というのはGoogleのランキングの解析アルゴリズムに委ねられているということです。 Javascriptで書きだしたソースはちょっと前までは正確な意味でのhttpレスポンスとして返ってこないという理由からランキングが落とされていました。実際にWebページのソースとしては表示されているそれそのもののソースではなくJavascriptのインクルードパスが書かれているのみだったからです。しかしながら最近ではこれらの実質的な内容をGoogleが読み取りそれらをkeywordとして登録するようになりました。つまりランキングには影響...
2016.3.6 日
mod_rewriteとは Apacheの機能でURLを書き換えてしまうというものです。SEO対策的な風潮の中で大流行しました。.phpの拡張子より.htmlの方が優先度が高いなんていう都市伝説が横行していた時代です。実際そうだったのかそうじゃなかったのかはわからないです。 portで判断する ポート80(http)でアクセスしてきたらhttpsにリライトする。SSLアクセスだけのサイトなどはこのような形にしているかと思います。RewriteCondで条件をport 80で判定します。 RewriteEngine on RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,...
2016.3.6 日
インターネットの創世記 私が若い時にはまだWEBとかインターネットいうものがなくて主なリモートメディアは電話でした。ポケベルも電話回線を使ったものだったし「電話」が通信技術の主流でした。(アマチュア無線とかそういうのもありました。モールス信号とか。) インターネットが一部のマニアに普及したのが私が20代前半頃で主にEmailでした。当時は電子メールと言っていました。 インターネットの接続にはまだ電話回線を使っていたのでいわゆるアナログ回線です。アナログ回線に電子的な2進数のデータを送受信させることから当時のFAXとだいたい同じような仕様だったのではないでしょうか。モデムといわれる交換器をPCと電話回線の間に挟んで通信しました。電子メールを数通受信するのに5分〜10分かかっていた時代です。1回...
2016.3.6 日
テーブルの初期化の方法 連番になっている主キーとかを初期化します。 mysql> USE [DBNAME]; mysql> TRUNCATE TABLE [TABLENAME]; mysql> ALTER TABLE [TABLENAME] AUTO_INCREMENT = 1; これでレコードが1から始まります。 途中の番号から始める 例えば最初のレコードを1000から始めたい場合などはそのまま値を1000にするだけです。 mysql> ALTER TABLE [TABLENAME] AUTO_INCREMENT = 1000; ですが、実レコードに1000以上のものがあると実行できません。
2016.3.6 日
composerを使ってLaravelインストール curlが使える場合 curlがあると簡単 curl -s http://getcomposer.org/installer | php phpもパスが通っていると楽 php composer.phar create-project laravel/laravel approot ※--prefer-distはいならないっぽい。 gate/publicにDocumentRootを設定してあげてlogとかviewとかにパーミッション与えて初期インストールはだいたい終わり。 composerを使ってLaravelインストール curlが使えない場合 composer-setup.phpをダウンロード curlが使えない環境だとこれ。しかもphp...
2016.3.6 日
preタグは改行できない仕組みになっているのですが、改行できないと困ってしまうときがあります。 white-space: -moz-pre-wrap; /* Mozilla */ white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ white-space: pre-wrap; /* CSS3 */ 公式的なスタイルになっていないのか、各ブラウザーに対して個別に書かないとダメです。
2016.3.6 日
アクセス時のbody幅とWindowを動的に伸び縮みさせたときのbody幅を取得します。これ使うとレスポンシブ対応のWEBデザインに比較的柔軟に対応できます。 静的には$(window).width()でそのまま取得できるのですが、動的にはこのままではダメでsetTimeout()を使って幅を取得するってところが面倒なのです。 $(function(){ // Window width default var egwidth = $(window).width(); console.log(egwidth); if (egwidth <= 640) { alert("スマホで見ている。"); } else if (egwidth > 640) { alert("PCで見ている。"...
2016.3.2 水
Listenに別ポートを追加 Listen 80 Listen 8080 たいていバーチャルホスト使うかと思うんですが、そこにもポート追加。 NameVirtualHost *:80 NameVirtualHost *:8080 <VirtualHost *:80> ServerAdmin admin@example.com DocumentRoot /home/user/www ServerName example.jp </VirtualHost> <VirtualHost *:8080> ServerAdmin admin@example.com DocumentRoot /home/test/www ServerName test.example....
2016.3.2 水
Markdownのプラグインは「JP Markdown」を使うことにしてみました。 タイトル title-h1 title-h2 title-h3 title-h4 title-h5 title-h6 # title-h1 ## title-h2 ### title-h3 #### title-h4 ##### title-h5 ###### title-h6 code code List – listlist – listlist * list – listlist * list * list Link https://saba.omnioo.com/note/ table Left align Right align Center align This...
2015.11.17 火
今時ガラケーのエージェント振り分けを頼まれた。 RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank) RewriteRule ^$ /member/mb/ [R,L]
2015.11.3 火
高畑充希は天才なのに全然売れないです。 しかし彼女の歌はiTunesのクラウドみたいなやつに全部入ってますね。これはすごい。 というブログを書いたのが2015/11/15で、まだトト姉ちゃんがはじまる前でした。期待どおりだいぶ大きな女優さんになってきました。
2013.1.20 日
2013.1.5 土
2012年のインターネット上のいろいろな事件がいろいろびっくりです。岡崎市中央図書館からPC乗っ取りでの掲示板書き込み事件、ひろゆき氏の麻薬特例法違反ほう助の疑いで書類送検やら、殆ど法治国家とは思えない事件がたくさんありました。おそらく今年も来年もそんなような事件が数多く話題になるのだろうと思うのですが、これ、私が仮にもインターネットという分野で幾許かを生業にしているということでその中身が理解できて、理解できるが故にその問題が明確に判断できるというだけで、実はこれらの「専門性」に関する冤罪や法的な整備、または実際にそれらの犠牲者となった方々は有史以来数多く存在していただろうことは予想できます。 遡れば魔女狩りからはじまり、現代の日本に至るまでとんでもない冤罪事件は無数にあるんじゃないかと。明...
2013.1.5 土
最近は、MTで記事を書いている際に自動的に挿入されるいろいろなタグがあって、それらを置換する作業がとても面倒です。特に <blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"> という風にインデントをblockquoteでつけると変なスタイルが自動的に入ってしまうのです。これはかなりうざったい。なので、ここらの無駄なスタイルを置換して削除してしまうのがデザイン的にもいいです。 http://powercms.alfasado.net/blog/2010/01/replacer.html
2013.1.2 水
2012.12.31 月
PHPすごいです。以前よりPerlばっかり使っていたのでこの度PHPではじめてアップローダーを作ってみたのだけど15分ぐらいでできてしまいました。 Webに特化したPHPなのでかなり簡単に作れるみたいです。 むしろアップロード専用の関数をすでに用意しているといった感じでそれらを組み合わせるといった感覚でしょうか。ちなみにPerlはアップローダーの関数を自分で作って自分で組み立てる…といった感覚です。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="generator" content="omnio...
2012.12.28 金
管理者権限でFBにログインして、該当のFacebookページへ移動します。管理者権限でログインしていれば、上部に「Facebookページを編集」という項目が現れています。クリックしてプルダウンすると「権限の管理」という項目があるので、そこに進みます。 開かれた設定画面の一番下の方に「Facebookページを削除」という項目があるので、そこをクリックします。完全に消えてしまって復元不可能なのでご注意。また削除するまでもなく非公開にするには、上部にある公開範囲で非公開にします。
2012.12.28 金
画像があってここが詳しいです。英語だけど本家の解説はこちら。 http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/dynamic_sidebar functions.phpにレジスタの関数を書く 1つのテーマには1つのfunctions.phpがあります。functionではなく、function(s)です。これを間違って私はかなりはまりました。このfunctions.phpに以下を追記します。 <?php //管理画面からサイドバーウィジェットが使えるようにする if ( function_exists('register_sidebar') ) ...
2012.12.28 金
普通のリンク共有ボタンを作成する Tweetボタンは以下のURLから作成します。特に認証など必要なく誰でも作成が可能です。 http://twitter.com/about/resources/buttons 様々な種類のTweetボタンがありますが、「リンクを共有する」ボタンが定番なのでそれを例にして設定してみます。サンプルはこちら URLをクリックして「リンクを共有する」ボタンを選択するとボタンのオプション設定画面が現れます。 が、この時点で最低限のボタンはすでに生成されていますので、コピペゾーンからソースをコピーしてHTMLなどに貼り付けてしまっても構いません。一応各種設定があるので入力しておくと良いと思います。 またURLを共有のところで「ページのURLを使う」を選択すると設置したペ...
2012.12.28 金
ソーシャルボタンの流行というのがあって、ホームページだかブログだかサイトだかポータルだかにはやたらにソシャルボタンがくっついているわけです。SEO的にはとてもすばらしいシステムなのかもしれない。社会的にもそれなりの何があるのかもしれないのですが、デザイン的にはかなりみっともない。むかし買ったWindowsマシンが立ち上がった瞬間にBIGLOBEだのNECだのフレッツ光だのMACAFEEだのやたらにバナーがデスクトップに立ち並んでいるようなダサさがあります。Appleが売れる理由にそういったインチキ臭い「ソシャル姓」がないところだと思っています。私なら個人的にそういった不細工なデザインのものは進んで購入したくないです。 ですが、このインチキ臭いソシャル姓は今猛烈な勢いで右肩上がり。先日もLIN...
2012.12.28 金
FTPなんかで接続後にWPのディレクトリ名だけ変えるのはNGです。基本的には、WPの管理画面の「設定」からWordpressのURLを変更後に実際のディレクトリ名を変更するのが正解です。 インストールディレクトリ名を変更してしまった後にログインしようと思うと「Not found 404」になって永久に再ログインできなくなってしまいます。 そういう場合は、PHPMyAdminなどでDBに直接アクセスしてsiteurlを直接変更してしまうのがよいです。 WPのDBのwp-optionsを開き先頭のsiteurlの中身を変更すればOKです。ログインできるようになるので、その他の設定は管理画面からいろいろやればよいです。ただ、ちょっとした弊害としてブログ記事に添付した画像のURLが違ってくるとかいろ...