ishii-akihiro’s blog

いろいろ試したことやバグ対応の作業履歴を残していきます。

一般健康診断を個人で受診してきました

背景 一年ほど無職で健康診断を受けておりませんでした。 林業の学校で学んでみようかと検討していたのですが、入学申請に必要な書類に健康診断書(学校指定の様式)が含まれていました。 今まで学校や会社で受診していたので勝手がわかりませんでしたが、無…

Google アナリティクス見たら、WordPressで書いているブログのアクセス数がゼロになっていた

事象 次の通りです。7日間ゼロとかマジやべえ。。 (※)この事象が生じたのは、このブログ(はてなブログ)ではありません。 原因 つまらないブログである。 いや、そういう問題ではない。 そういえば、WordPressに適用するテーマを最近変えたのでした。 これ…

Chart.js で指定した横軸の範囲を塗りつぶす

やりたいこと イメージは次のキャプチャの通りです。 使用したライブラリ jQuery 3.4.1 Chart.js 2.9.3 コード HTMLのbody部分 <div class="canvas-wrapper"> <canvas id="chart"></canvas> </div> javaScript(jQuery) Chart.js のプラグイン機能を使います。ここでは、1985年〜1990年の範囲を塗りつぶすように設定します…

Chart.jsで、横軸の閾値を境にデータの色を変える

概要 例えば、年ごとの時系列データがあったとして、平成元年以降は色を変えて強調したいというような場合を想定した処理です。 完成イメージ 閾値が変更されたら、閾値を境にデータの色を変更します。 使用したライブラリ jQuery 3.4.1 Chart.js 2.9.3 コー…

画面幅より広い親要素内で、画面に表示されている両端の子要素を取得する

img { border: 1px solid #000; } 概要 年表のWebアプリを作っています。すべての期間が画面幅に収まらないため、横スクロールで一部の期間のみ表示させています。 画面に表示されている両端の年を取得する必要が出てきたので、jQueryでの実装方法を調べまし…

FuelPHP の as_array() で取得したDBデータを、1次元の連想配列に変換する

概要 FuelPHPでは、クエリビルダを使ってDBのデータを取得できます。結果に対してas_array()を使うと2次元の連想配列で取得できます。取得したすべてのレコードをループで処理する場合は、扱いやすい形です。 一方、ある条件に一致するレコードの特定のフィ…

position: absolute; を適用すると、次のDOM要素が重なってしまう

CSS

困ったこと あるブロック要素に対してposition: absolute;のスタイルを適用したところ、その次のDOM要素が重なってしまいました。 回避策 position: absolute;を適用したブロック要素と同じ高さのダミー要素を間に挟みます。

西暦と和暦の表示を切り替えるラジオボタンを設置する

概要 システム開発において、整数の連番である西暦は扱いやすいです。しかし、元号も令和になりましたし、日本人の感覚としては和暦の方が捉えやすいことも多いです。 消費税の導入やベルリンの壁が崩壊したのは平成元年です。1989年と言われるより印象に残…

FuelPHP の DBUtil::create_table に含めるフィールドに、on update CURRENT_TIMESTAMP 属性を付与する

概要 FuelPHP のマイグレーションにて、テーブル作成と同時に初期データも追加します。更新日時のフィールド「updated_at」にon update CURRENT_TIMESTAMP属性を付与するための方法を記します。 環境 FuelPHP 1.8.2 方法 公式ドキュメントだけではわからなか…

Asana に Toggle Button が表示されない場合の対処

概要 Asana と Toggle を連携したのに、Asana のタスクに Toggle Button が表示されなくて少し悩みました。それから解決に至った過程を記します。 前提 Google Chrome の拡張機能「Toggle Button」を使用します。 chrome.google.com バージョン Google Chrom…

FuelPHP で ParseError: syntax error に悩んだ結果、原因は全角スペースだった

img{ border: 1px solid #000; } 概要 表題でオチまで述べていますが、エラー内容から原因を特定するまでに時間がかかったので一応メモしておきます。 環境 FuelPHP 1.8.2 エラー内容 キャプチャ テキスト ErrorException [ Fatal Error ]: Method Fuel\Core…

php composer.phar update したら 「Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested.」と言われた

php

概要 FuelPHPで単体テストの学習がてら PHPUnit の導入を試みていたのですが、その過程で composer.json に記載したパッケージを更新しようとしたら何やら表題の警告が出ました。 環境 Mac OS Catalina ターミナルに打ち込んだコマンド composer.json ファイ…

Chart.jsのグラフをボタン押下時に更新する

概要 縦軸が金額になるグラフを作っていて、単位を千円とか百万円とかに切り替えるボタンが欲しくなりました。両方作って表示すればいいのですが、Chart.jsの学習がてらやってみました。 作成したサンプル 更新ボタンを押す度にAの値が2倍になるグラフです。…

Chart.jsの描画処理を関数で共通化して、データセットを引数にする

/img{ border: 1px solid #000; width: 50%; }/ 概要 Chart.jsで同じページに複数の箇所にグラフを描画したいとき、Optionsが同じであればグラフごとに描画処理を書くと冗長になります。 そこで、描画処理を関数で共通化して、データセットは引数として渡し…

FuelPHPでe-StatのAPIから国勢調査の人口集計を取得する

img{ border: 1px solid #000; } 概要 FuelPHPに慣れてきたので、外部APIからデータを取得する処理を書いてみたいと思います。 試しに、e-Stat の APIから国勢調査の人口集計を取得してみます。前半ではFuelPHPを使わずに、e-Stat の APIの使い方を確認して…

FuelPHPで外部APIから取得した結果がデコードされていない

img{ border: 1px solid #000; } 概要 FuelPHPのコントローラから外部APIにアクセスしてみました。結果は取得できましたが、日本語の部分がデコードされていませんでした。例えば、「石井」なら「\u77F3\u4E95」になってる状態です。日本語でおk! 環境 Fuel…

FuelPHPで作ったWebアプリを、さくらのレンタルサーバで公開する

概要 タイトルの通りです。「FuelPHP さくら」とかで検索すると似たような記事が見つかるのですが、次の4点が気になったので私も記事を書くことにしました。 専門用語が多い(初学者向けではない) 最近書かれた記事が少ない(不要な手順があった) ファイ…

FuelPHPでフォームの共通項目をモジュールで作成する

img{ border: 1px solid #000; width: 50%; } 概要 FuelPHPで似たようなフォームを作っていたので、共通の項目をモジュール化しました。 次のようなケースを想定しています。 * データの新規作成と更新で、一部の項目を分けたい(設定するバリデーションなど…

FuelPHPで処理の異なる2つのボタンをもつフォームを作る

概要 FuelPHPでWebアプリを作っています。ある商品のデータを編集する画面にて、更新と削除のボタンを用意する方法がわかったので記事に残します。画面のイメージは次の通りです(カクカクしててすみません)。 どちらのボタンも同じフォームの要素にしてい…

はてなブログの記事に.mov形式の動画が載せられないのでgifに変換したけど苦労した

この記事が役に立つかもしれない人 Mac ユーザ(OS Mojave以降)である 収録した画面(.mov)を gif に変換したい フリーの変換ソフトは使いたくない Homebrew(パッケージマネージャ)が使える 概要 ある機能の実装(コーディング)方法について、PC画面のス…

FuelPHPのフォーム項目に、DBのコードマスタを参照したプルダウンメニューを付与する

img{ border: 1px solid #000;} .w50{ width: 50%; } .w30{ width: 30%; } 目的 次のような商品テーブルと種別コードマスタを考えます。 ・商品テーブル(products) ・種別コードマスタ(categories) FuelPHPで商品テーブルの編集を想定した画面を作り、コ…

はてなブログの Markdown 記法で php コードが色付き表示されない

概要 最近 php のコードをやたら記事に書いていますが、色付きで表示できずにそのままグレーで投稿していました。 たまたま色付きで表示する方法がわかったので記事に残しておきます。 解決方法 次の2点を守ることで、php のコードを色付き表示できました。…

FuelPHP で拡張した Validation のルールを適用したフォームを作成する

img{border: 1px solid #000; width: 50%} 概要 FuelPHPでユーザ登録をする画面にて、メールアドレスなどを入力するフォームを作成しています。 POSTされたメールアドレスがDBに登録済みでないか確認するため、Validation のルールを拡張します。Validation …

FuelPHPの form.php を編集して、tableタグのないフォームを生成する

img{ border: 1px solid #888; width: 60%; } 概要 次のようなレイアウトのフォームをFuelPHPで作りたい。 環境 FuelPHP 1.8.2 課題 FuelPHPでは、次のようにFieldSetインスタンスをaddで追加したフォームを作成することができます。 add('use…

FuelPHPエラー:There is no security.output_filter defined in your application config file

概要 タイトルの通り。「security.output_filter が設定ファイルに定義されていません」と言われています。 状況 application config file というのは、APPPATH/config/config.php のことです。 また、security.output_filter というのは、config.php に書か…

FuelPHPエラー:Cannot declare class Controller_○○, because the name is already in use

概要 タイトルの通り、FuelPHPで「この名前はすでに使われているので、Controller_○○クラスは定義できません」と言われました。 状況 コントローラのphpファイルをサブディレクトリに入れたらエラーになりました。同名クラスのコントローラはないので、なぜ…

Chart.jsでグラフに表示する長いラベルを折り返して表示する

img{ border: 1px solid #000; } 概要 Chart.jsで棒グラフを作ったらこんな感じになりました。 これはひどい。 ということで、ラベルの見栄えをよくするために、次の2点を施します。 1. 10文字を超えたら2行に分ける 2. 斜めではなく縦に表示する 環境 Char…

はてなブログの記事に投稿した写真のサイズを小さくする(Markdown記法)

img{ border: 1px solid #000; } 概要 はてなブログの記事をMarkdown記法で書く際に、投稿した写真のサイズを小さくする方法をご紹介します。 例 前に書いた記事の一部ですが、例えばこんなふうに写真を挿入します(3行目)。 #### 1. コントローラにて、モデ…

FuelPHPでDBのデータから作った図表を表示する

img{ border: 1px solid #000; } .small-frame{ width: 50%; } 概要 DBのデータから図表を作成して表示するWebページを、FuelPHPで作成しました。自分用のメモとして記事に残します。 前提知識 FuelPHPにおけるMVCの基本操作 SQL、html、javaScriptの基礎 JS…

Git管理しているプロジェクト内での yarn add webpack を、SourceTreeのGUI操作で元に戻す

Git

事情 FuelPHPのプロジェクトをGitで管理しています。Gitの操作はSourceTreeを使って実行しています。 ふと、webpackというものを使ってみようと思って$ yarn add webpackしたのですが、概念と利便性が理解できていないため結局使わず。しかしyarn addにより…