Archive "2016年7月"を表示しています。
2016.7.30 土
データの表示についてはこの数十年間どの言語も意地をかけて挑戦してきました。perlのforeach、jQueryのeach、Javascriptのfor、PHPのforeach、そしてAngularJSのng-repeatというものです。前回の例では配列をダンプしたみたいな感じでおよそ実用には伴わないものでした。これを秩序をもって表示しようというものです。コントローラは前回と同じものを用いています。 配列は、 $scope.tests = [ {"language":"PHP", "memo":"馬鹿"}, {"language":"Javasctript", "memo":"変態"}, {"language":"Ruby", "memo":"エリート"}, {"language":"C",...
2016.7.28 木
Proxy Error The proxy server received an invalid response from an upstream server. The proxy server could not handle the request GET /sample/index.php. Reason: Error reading from remote server なんだこのエラーは。正直porxyなんて使うことが滅多にないのでほとんど無知です。 <Proxy *> SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1 </Proxy> もしくは <Location /hoge&...
2016.7.28 木
さて前回では初歩的なAngularJSを使ってみましたが、今度はコントローラを使います。コードがものすごく複雑になってきたときにhtmlファイルにコードを書くのはナンセンスなのでコントローラに分けてあげます。 <head> <meta charset="utf-8"> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.6/angular.min.js"></script> <script src="controller_001.js"></script> ←こんな感じでよびだす </head> コントローラを使ってみる Hello World...
2016.7.27 水
移行先の環境準備 ホストの作成・DBの作成 CakePHP3アプリのデータ移行 (.gitignore CakePHP3)[https://github.com/github/gitignore/blob/master/CakePHP.gitignore] DBのDumpとRestore 環境の調整 パーミッションと書込み権限 app/logs [777]に変更 app/logs/error.log [666]に変更 app/tmp/cache/persistent [777]に変更 app/tmp/cache/models [777]に変更 app/tmp/cache/models/* [666]に変更 app/config/app.phpでDBの設定変更 app/config/app.p...
2016.7.27 水
10年以上webの仕事やってますが、target=”_blank”でつくったリックをクリックするとタブが2つ出てしまうという現象。具合的にうとMovableTypeで作成したサイトでスマホ版とPC版をエージェントで振り分けているようなやつです。内部の背景が全くわからないので原因特定できませんでしたが、target=”new”で大丈夫っぽいです。 が、target=”hogehoge”でもnewと同じ挙動になります。なんでもいいって話のようです。 <a href="#" target="new">hoge</a> で2つ出てしまう問題はいったんは解決するらしい。 if (0 !== $(e.nowT...
2016.7.27 水
ライブラリーを呼び出す AngularJSはjQueryと同じようにライブラリー的なものを使います。まずは面倒なのでGoogleのCDNからライブラリーをひっぱってきて使うとよいと想います。 <head> .... <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.6/angular.min.js"></script> .... </head> これで最初の準備は整いました。 次にAngularJSのアプリを使うことを宣言します。これがないとダメです。 <html lang="ja" ng-app> ng-appをhtmlタグの中に書いてあげるだけです。これでAng...
2016.7.25 月
タブレットで見たとき右側が切れたりするときに使うやつ。結構便利。 PCとスマホとタブレットと3つのデザインを作るのが非常に面倒なので、タブレットのデザインをそのままPCのデザインで代用できます。 <script> var ua = navigator.userAgent; if(ua.indexOf('iPad') > 0 || (ua.indexOf('Android') > 0 && ua.indexOf('Mobile') < 0)) { // タブレット document.write('<meta name="viewport" content="width=[PCの幅],user-scalable=no">'); }else...
2016.7.24 日
あと数年もすると歴史の中に埋没してしまいそうなイスラエルのパレスチナ問題ですが、ぼんやりしていると日本ではここらのことを誰もおしえてくれないし対岸の火事といった様子で全く問題にならないというわけです。2016年現在もアレッポの石鹸がなくなった!という程度でシリアの問題も日本では比較的他人事ではあります。マクロ経済的には多大な影響があるんだろうなというところは薄ぼんやりとわかってはいるもののアレッポの石鹸がなくなっても大騒ぎするものでもないと。 とはいえ、イスラエルはすごいですね。ユダヤとパレスチナの問題は、本当に壮絶です。例えばこの日本に旧日本民族だとか名乗る人々が集まってきて今の日本をよくわからん民族が乗っ取ってしまったということになったらそれはそれは問題でしょう。そんなことがこの現代に現...
2016.7.23 土
スペイン警察が「心肺蘇生ビデオがエロすぎました」と謝罪という話があってすごくいい話だなと思っております。公務員のセンスが抜群にいいのがヨーロッパです。公共施設のデザインが本当に美しくてかっこいいのです。血税を何に使うのかという政治の話にもなると思うのですが民度が低く文化的精神が非常に乏しい日本ではその金の使い方がとても貧乏くさい。火の用心のポスターには年老いた菊池桃子を登用しおそろしくセンスの悪いデザイナーがやっちゃってしまっています。それがヤフオクで数千円で売られているという始末。 勿論私はこのエロCPRがすばらしいと言っているのではなく、この態度というか民度というか文化水準がすばらしいと言っているわけです。命というものに対してのアプローチの方法が非常にウィットに富んでいると言いたい。心に...
2016.7.21 木
HTML: いちばんよく使うやつ <!DOCTYPE HTML> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width,user-scalable=no"> <title>DEMO TITLE</title> <meta name="description" content="DESCRIPTION"> <meta name="keywords" content="...
2016.7.20 水
phpのcurlはいろいろ便利なので使えるんだったら使ったほうがいいです。(とはいえ代用できるコマンドが山程あるんですが。) curlでhtmlの内容を取得する 普通にURLアクセスしてhttpのレスポンスした文字列を取得する方法です。APIに接続するときとかスクレイピングなんかの土台部分になるかと思います。 <?php // gethtml.php $base_url = 'https://www.google.co.jp/'; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $base_url); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET'); curl_setopt($c...
2016.7.14 木
これ結構忘れる。 PHPのタイムゾーン設定 /etc/php.ini date.timezone = Asia/Tokyo CakePHP3の定義ファイルの設定 /home/user/app/config/app.php 'Datasources' => [ 'default' => [ 'timezone' => 'UTC',     ↓ 'timezone' => '+09:00', Bootstrapの設定 /home/user/app/config/bootstrap.php date_default_timezone_set('UTC'); ↓ date_default_timezone_set('Asia/Tokyo');
2016.7.14 木
CakePHP3ですべてのコントローラー内で利用できる共通クラスというか共通関数の作成方法です。普通のPHPでいうところのincludeとかrequireに相当する機能というと語弊がありますが、そんな感じのものです。 よっぽど理由がない限り、 src/Controller/Component 以下に作成します。 最低限の要素は以下のようになります。namespaceとuseでコンポーネントを使えるようにします。このクラスはComponentクラスの継承となるので、クラス名は任意のものでよいです。まずはTestComponent.phpなるものを作ってみましょう。 <?php namespace App\Controller\Component; use Cake\Controller\...
2016.7.11 月
指定したパスワードでログインできない。(大文字小文字数字の区別がついていないっぽい) エンジニアはすべてのGUIを操作できると思っている。 自分以外の別な人がなんでも知っていると思っている。
2016.7.10 日
HTML Coding ドメインの違うリンクはtarget=”_blank”にする。 <br> VS <br /> セキュリティー対策 = XSS Local = 自分のPC metaタグのkeywordとかdiscriptionって意味あるんですか? Server クラウドサーバーなのに専用サーバー並みの仕様策定。 Management 100mを9.60で走れるとして42.195kmを1時間12分で完走できるというスケジュール換算。 謎の質問 「実際にサーバーの冗長化をする際に設定にどれぐらい時間がかかりますか?」という雑な質問をいただきました。現状のネットワークの状況がわからないと何も答えられません。 「”コラム”...
2016.7.8 金
ってのは殆ど嘘くさい噂の1つではありますが、たぶん活字という概念自体が歴史と共に変化しているだけという当たり前のことのように思います。活版印刷で聖書を印刷することが活字という時代から現在では図に近いギリギリの活字、紙に印刷されていない活字(電子書籍やWEBでの文字情報)、講義やセミナーによる耳や視覚からの情報という感じで、特に新聞や書籍といった古典的な活字だけが活字ではないということになってしまったわけです。そういう意味では私はものすごい文字を読んでます。むしろ文字を読み書きするのが仕事なので、一日中文字情報を扱っています。これを活字離れというのかどうかはよくわかりませんが、半角英数字のみのプログラムコードや設定ファイル、設計書と仕様書、パラメーターシート、読むのは殆ど英語のWEBサイトのD...
2016.7.4 月
ニュースサイトみたいにトップページにサムネイルとかを表示してリンク先を記事にする方法です。 たいていのCMSはというかだいたい全部のCMSはテキストと画像を分離せざる得ないわけで、MTもまた記事のテキストと投稿した画像を別々で管理してHTML上で合成という手続きをとっているために画像の表示は面倒臭いのです。以下、ブログ記事のサムネイルを表示して、更にサムネイルのリンク先は画像ではなくその記事のページへという仕様になっています。 肝はMTEntriesでぐるぐるループを回して、その中でMTEntryAssetsを更にぐるぐる回す。MTEntryAssetsはMTEntriesにネストされている状態なのでpermalinkを引っ張ってくると記事のリンクになります。 記事内のすべての画像をサムネイ...
2016.7.4 月
phpの開発では適当にやりがちなんですが、Documentないとつらいです。特に大きくなってしまったプロジェクトについては。そういうときに役にたつのがphpDocumentorです。classファイルのコメントからテキストを抽出して整理してくれます。pearからインストールできるのかpeearライブラリーの一部なのかよくわからないのですが、どっちなんでしょうか。 ## インストル とりあえず現時点では以下の要件を満たしていないとダメ。 – PHP 5.3.3 – intl extension for PHP – Graphviz CakePHP3で使うんだったらほとんど問題ないです。 http://qiita.com/itosho/items/0f809e...
2016.7.3 日
jQueryだと面倒なバリデーションをかなり楽にやってくれます。これは結構いいかな。Form作る時なんかはこれがいいですね。 Emailのバリデーション よく使う項目なのでコントローラすらいらないというすぐれものです。angular.min.jsを呼んであげるだけであとはHTMLを操作するだけでOKです。 コントローラを使わなくていいのは、AngularJSがすでに内部的にコントローラをもっていてそれにセットされるからです。 <div> <form action="" name="userForm" novalidate> <input type="email" name="email" ng-model="email" required ng-maxlengt...
2016.7.2 土
お客さんとかあんまり親しくない友人とか知り合いと話しているとプログラマーはいったい何をやっているのかという話になります。多めに見積もって尊敬が半分、謎と懐疑が半分といった感じがするような話題です。実際にプログラムを書く作業はおもしろいものではありませんし、正直いうと辛い作業ですし、決して天才的な作業ではありません。読み書きソロバン(現代版でいうと、英語・パソコン・マーケティング)ができれば誰でもできることです。しかし誰でもできると言っても「日本人なら誰でも英語ができるようになれる」というようないった感じで、結局できない人には全くできません。逆に何の努力もしなくてもできる人にはできてしまうといった代物です。 プログラマーが最も最初に考えていることはアイディアの選別です。個人的なところでいうと、...
2016.7.2 土
計算のやり方自体定かではない大人なのですが、小学校で習う計算の仕方が難しい。 13-5=x となっているんですが、どうやって自分の頭の中で計算しているのかもうわかりませんが、答えは8だということがすぐにわかる。しかし次男の算数のテストを見ていると、 1.引く方の5を2と3に分解している。(おそらく13も10と3に分解されているのだろう) (10+3)-(2+3)=x となっているようである。 10+3-2-3=x となるから、 (10-2)+(3-3)=x x=8 となるようです。これ難しくないですかね。10を基準に計算しているようです。
2016.7.2 土
/proc/meminfoで確認します。ただのファイルなので、catとかviとかで開いて見ます。 $ cat /proc/meminfo というような感じです。 MemTotal: 2097152 kB MemFree: 1903832 kB Buffers: 0 kB Cached: 0 kB SwapCached: 0 kB Active: 0 kB Inactive: 0 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 2097152 kB LowFree: 1903832 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 260 kB Writeback: 0 kB AnonPages: 0 kB Mapped:...