Archive "2017年4月"を表示しています。
2017.4.30 日
PHPフレームワークのPOST値は結局はPHPなのでスーパーグローバル変数としての$_POSTで受け取れるのですが、これで受け取らないというのが普通です。$_POSTで受け取っちゃうとあんまりよろしくないことになりかねないのでできるだけフレームワークの規約に従うのがよいです。 Laravel 5.4 HTTPリクエスト LaravelのPOST とはいえいろいろな方法で取得できるのもこれまた事実です。私個人としてはDependency Injection (DI)でいろいろやるのがLaravelらしいと思います。 Input (Facade) Request (Facade/DI) FormRequest (DI) Formの設計 ここでは全体の流れだけで把握したいので簡素なものにしておきま...
2017.4.26 水
テーブルを作成する データベーステーブルの作成と管理、モデルとがいっかんして管理できるというのがいいところ。舶来品のLaravelは、model名が単数形(キャメルケース)、テーブル名が複数形(スネークケース)となります。 ここでは以下のように作成します。 term name table名 data_projects model名 DataProject model file app/DataProject.php migration file database/migrations/yyyy_mm_dd_hhiiss_create_data_projects_table.php モデルを作成する Laravel5の解説書にはモデルとマイグレーションは別々に作成することになっていますが、どっ...
2017.4.25 火
データベースでいろいろやる前に LaravelのDB操作は、いわゆるモデルとかエンティティとか使ってやたらと濃厚に接続する方法と、クエリビルダーを使ってあっさり使う方法があります。前者はEloquentORMを使って、後者はその名の通りクエリビルダーを使ってSQL操作します。 ちゃんとしたアプリケーションを作るのだったらDB周りもちゃんとつくった方がよいでしょう。 データベース接続情報 データベースの接続情報を記述するこの2ファイル。 .env config/database.php お好みいろいろあると思いますが、.envに記述した情報をdatabase.phpで使うというのがわかりやすくてよいかと思います。(最初は) どっちにしろ最終的にはdatabase.phpが設定ファイルなので、こ...
2017.4.23 日
いろいろなルーティングの方法があって、ここらがLaravel5というかフレームワークの真髄かなと。 Lravel5の最初の1ページの理解ができたら、ここらは殆どその応用みたいなものなのでそんな難しいもんじゃないです。 httpの難しい話になると、GET,POST,PUT,DELETEということになりますが、正直開発している人間として言わせてもらうとPUTとDELETEは基本的なルーティングにあるようなRoute::put, Route::deleteは正直使った試しがありません。いわゆる動詞として100%使うのが、 Route::get(); Route::post(); の2つになります。なのでここだけ詳しくやります。 ルーティングにパラメータを渡す ルーティングにパラメータを渡す 例によ...
2017.4.23 日
まだまだタダで読める読める。 index 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 広告営業の心労 前編 広告営業の心労 後編 18 19 20 21 22 23 24 25 26 [番外編(https://cakes.mu/posts/14349) 27 28 29 30 31 32 総集編 33 34 35 36 番外編 37 38 39 40 41 42 43 44 番外編 45 46 47 48
2017.4.23 日
Windows MINGW64でphpを使うの続きです。 Localのコンソールが何であるかによってちょっと変わりますが基本は同じです。私はMINGW64使っておりますのでここでもその想定で。 xamppのphpパス xamppをインストールしたばかりだとデフォルトでcliはフルパスじゃないと使えません。 /c/xampp/php/php.exe -v PHP 5.6.19 (cli) (built: Mar 2 2016 20:08:35) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies こんな感じでCLIとして使えます。しかしこれではかな...
2017.4.23 日
ルーティング コントローラ ビュー を設定してトップページを作成します。 ルーティング まずはデフォルトのルーティングの設定を見てみると $ php artisan route:list +--------+----------+----------+------+---------+--------------+ | Domain | Method | URI | Name | Action | Middleware | +--------+----------+----------+------+---------+--------------+ | | GET|HEAD | / | | Closure | web | | | GET|HEAD | api/user | | Closur...
2017.4.21 金
LolipopにSSHログインしたらコンソールから cd /usr/local ls -al とやると一応使える言語がいろいろと出てくるので確認してみてください。 rootなのでlsしかできないですのが、ここらに使えるものが揃っています。 php5.3 php5.4 php5.5 php5.6 php7.1 php7を使いたい場合は、 /usr/local/php7.1/bin/php -v こんな感じでフルパスで指定してやると使えます。
2017.4.19 水
正規表現をつかえると便利だけど、正規表現を妄りに使うとほんと厄介なことになるので皆さん注意してください。正規表現を多用したがる人は正直いって大きなプロジェクトに全然向いてない。 メールアドレスの正規表現 もうこれでいいか。 /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/ いろいろなやつ “./aa”や”./09″などの二桁文字列形式にマッチ。ディレクトリとか。 ./[a-zA-Z0-9]{2}$ “VALUE”という文字列をを含まない行にマッチ ^(?!.*VALUE).+$ 半角・全角スペースの連続 無駄スペースとかを...
2017.4.19 水
ComposerでLaravelインストールの続きです。 Laravel5はちょっといろいろ変わってしまったので、いろいろちょっと違いますが、概ね同じ感じがします。 インストール後に画面が真っ白になったら ログが書き込めないというエラーがapacheのエラーログに出てくるのでパーミッションを修正してあげる。 chmod 777 LARAVEL5_INSTALLDIR/storage/logs これでlaravel.logというファイルが作成できるようになります。このファイルはapacheが作るファイルになるので、気に入らない場合は666にしてオーナーを自分にしちゃいます。 これでLaravelのエラーデバックができるようになります。(Symfonyの?) chmod 777 LARAVEL5...
2017.4.19 水
xamppをインストールしていたらmysqlのフルパスがこうなので、こんなになっちゃう。 /Applications/XAMPP/xamppfiles/bin/mysql -u root -p これだと嫌になっちゃうのでパスを通しておく。 cd ~ vi .bash_profile ユーザーの.bash_profileにパスを追記しておく。 export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH" 保存したら source .bash_profile これで、 mysql -u root -p で普通にログインできる。
2017.4.16 日
PHP5.4以降からビルトインサーバーが使えます。PHP5.4がインストールされているなら、XAMPPとかApacheとか設定しなくても簡易的なWEBサーバーをその場限りで立ち上げて使えます。大規模な開発は無理だけど結構なかなか使えるので皆さん使ってください。 $ cd ~/[DocumentRootにしたいディレクトリ] $ php -S localhost:8000 コツは使ってないポート指定することです。 このままブラウザーを立ち上げてhttp://localhost:8000/にアクセスするともうWEBサーバーになってます。とはいえ、このサーバーってApache何でしょうか。nginxなんでしょうか。 またhostsファイルに適当なドメインを設定しておけば、localhost以外でも...
2017.4.16 日
githubはとても便利なんですが、最初に使おうと思うと結構面倒なので備忘録。 githubは基本すべてオープンになるので、ソースを晒す前提で書いてゆくとよいかと思います。無料で使えるリモートリポジトリなので大変ありがたいです。 SSHでGithubに接続する githubへの接続はSSHの鍵認証みなので、最初にSSHキーを作成します。 SSHの鍵を作成する 何も設定しない場合は、以下の2つのファイルが作成されます。秘密鍵(id_rsa)と公開鍵(id_rsa.pub)です。 id_rsa id_rsa.pub 通常SSHで接続する際には公開鍵をAuthGithubに接続する際にはauthorized_keysファイルに登録(追記)します。GithubにSSHで接続する場合は、 Github...
2017.4.12 水
Sakuraの共有サーバーとかはデフォルトで文字化けするので、もうちょっと何とかしてください。日本国内IPフィルタとかいらないので。 こちらとても詳しく書かれております。参考にしております。 ページャをlessにする。(デフォルトはたぶんviなのかな。) git config --global core.pager "less -cm" Gitの文字コードをUFT-8にする。 vi .cshrc [以下追記] setenv LESSCHARSET utf-8 設定を反映させる sourec ~/.cshrc これでOK。なのですが、.bash_profileや.bashrcの場合も同様にsetenvしてあげる必要があります。私の環境ではexport LESSCHARSET=utf-8が効きま...
2017.4.11 火
Xcodeインストール Command Line Tools for Xcode Homebrew (書きかけ…) Xcodeインストール 入っていなかったらApple Appsからインストール Command Line Tools のインストール xcode-select --install Mac OSX 10.11 El Capitan にRuby + Rails4 開発環境の構築 Mac OSX 10.12 macOS Sierra にRuby + Rails4 開発環境の構築 Ruby on Rails 4.2 を Mac OS X にインストールする手順をかなり丁寧に説明してみました
2017.4.11 火
brewで更新すると楽。(インストール手順はこちら) brew update これで最新になるので、 brew install git これで終わり。 /usr/bin/git --version git version 2.11.0 (Apple Git-81) フルパスでやると新しいのが入っているんだけど、普通にgitとやると古い方のversion 1.8.4になってしまうので、パスを調整。 既存のものが/usr/local/bin/git、新しいものが/usr/bin/gitにあるので、/usr/local/bin/gitを読みにいっちゃっているというわけです。 vi ~/.bash_profile (これ追記) export PATH="/usr/local/git/bin:$PAT...
2017.4.10 月
息子がやりたいというので、NHKの「こんなことできました」を作りました。面倒くさい。
2017.4.10 月
SEO対策というものがあって、素人が陥りやすい罠は「xxxxをするとよい」というかなり単純なSEO対策です。SEO対策の手法は実際には殆どこれに等しいです。例えば、Facebookがいいとか、Twitterがいいとか、ソシャルボタンがいいとか、メタタグがいいとか、パンくずがいいとか、メルマガがいいとか。実際には殆ど無意味です。SEO対策は格闘技みたいなものなので、変化に富むその一瞬のすきをつくことと、日々の鍛錬でのみ成就する…というのが私の経験です。ですので、基礎段階から応用編まで順に正しくトレーニングしないと体を壊すか、飽きてやめてしまいます。 そもそもSEOは検索エンジン最適化と訳されるようにアクセス数増加戦略でもなく、人気取りでもなく、広告収入対策でもなく、単に検索エンジン(殆どGoo...
2017.4.9 日
最近中間証明書を使うというのがもう主流というか当たり前になってきていて非常に面倒くさい。 グローバルサインのSSLチェッカーを使うと「中間証明書がない」と叱られます。中間証明書は設定済みなんですが、4階層以上の証明ツリーを持つ場合とnginx等の中間証明書を設定できない場合、こういったエラーが出るようです。具体的にいうとこれらのエラーが出るのは殆どスマホのアンドロイド端末ですね。 https://ssltools.websecurity.symantec.com/checker/views/certCheck.jsp 4階層以上の場合はこんな風になっているらしい。 ルート証明書(ブラウザに標準で格納されています) ┗ クロスルート設定用証明書(共通のクロスルート設定用証明書をダウンロードし、...
2017.4.9 日
Functionとかユーザー定義関数とかサブルーチンとかいろいろな言い方がありますが、あるまとまったルーチンを整理して書いておいて使うときにその都度呼び出すことができるのは大変有意義なことです。というのも無駄な処理や繰り返し処理などをできるだけ避けるという意味では、プログラムにはもう欠かすことのできない機構なのです。 jQueryではJavascriptと同様の定義方法でFunctionが利用できます。というか全く同じです。 Functionを使う 引数がない場合 特に引数が必要ない場合は以下のように書けます。 [jQuery code] <script type="text/javascript"> $(function(){ changetext(); //Functionを...
2017.4.9 日
rootのパスワード Ubuntuではデフォルトでrootのパスワードが設定されていません。インストール時に設定できるユーザーがsudo suでroot権限を得てコマンドを打つしかないのですが、rootにパスワードを設定すると普通にその他のOSと同様にrootでログイン可能です。Ubuntuでは基本的にrootのパスワード設定は推奨されていません。パスワードを設定しなければroot権限を乗っ取られることが殆どないと判断しているからです。ですのでパスワード設定には十分注意してください。 まず設定ユーザーでログインする。 sudo su [Enter]を打つとパスワードを要求されます。この時、rootのパスワードは当然まだないのでこのユーザーのパスワードを打ちます。(不思議です。) root権限...
2017.4.9 日
どのプログラム言語もそうですが、現在変数に入っている値を出力してみてなんぼという世界観がありまして、開発中においてもデバックにおいても欠かせないものがあります。jQueryで出力するにはどうするのかというと、Attributes/APIのhtml()やtext()を利用します。Javascriptの開発中ではdocument.write()を使用したりalert()使用したりする方もおられると思いますが、jQueryはDOM要素に直接アクセスできるので非常に楽ちんです。console.log()も使えますが。 htmlタグを表示する 文字列を表示する 既存の文字列の前に表示する 既存の文字列の後に表示する 既存のタグの前に表示する 既存のタグの後ろに表示する スカラー変数を出力する 配列を出...
2017.4.9 日
Mac用のyumとかapt-getみたいなものです。 Homebebrew for mac brewインストール 以下のコマンドでインストールできますが、最新のコマンドは公式ページから取得するのがよさそう。root以外のユーザーでやるとsuしないとダメなので途中でrootのパスワード求められます。 $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" .... Installation successful! brewインストール後 インストールに成功したら”brew help”でコマンド一覧を確認しておきましょう。数も少ないし。 $ br...
2017.4.5 水
2017.4.5 水
サーバーのCPU情報は、/proc/cpuinfoで確認できます。だいたいの目安で数値自体はかなりいい加減らしいです。その上、何を書いているのかよくわかりません。見るところ3箇所程度。 #cat /proc/cpuinfoとか#vi /proc/cpuinfoとかで見ます。 項目 内容 processor 0 vendor_id GenuineIntel cpu family 6 model 44 model name Intel(R) Xeon(R) CPU X5650 @ 2.67GHz stepping 2 cpu MHz 2666.848 cache size 12288 KB physical id 1 siblings 12 core id 0 cpu cores 6 apici...
2017.4.5 水
鍵のペアを作成する際にコメントに名前とかEmailとか入れておくとちょっと手間ですが誰がログインしたのかわかるようになります。 sshのsecureログのカスタマイズ vi /etc/ssh/sshd_config #SyslogFacility AUTH ↓ SyslogFacility AUTHPRIV #LogLevel INFO ↓ LogLevel VERBOSE ログ確認 tail -f /var/log/secure こんな感じでフィンフガープリントがとれます。 Apr 5 12:00:45 hostname sshd[4819]: Received disconnect from 123.456.789.000: 11: disconnected by user Apr 5 ...
2017.4.5 水
「HTTP/2」がついに登場! 開発者が知っておきたい通信の仕組み・新機能・導入方法 概要としてはこんな感じで、この先数年後にはデフォルトスタンダードになってるんじゃないかと思います。 環境の下準備 CentOS7のインストール直後にやっておくとよいかと。yum upgradeでだいたい全部入ってしまうようで環境によっては蛇足かもしれません。 yum -y upgrade yum -y update yum groupinstall "Base" yum groupinstall "Development tools" yum groupinstall "Japanese Support" yum install bind-utils yum install nmap FirewallとかS...