So-net無料ブログ作成
検索選択
前の10件 | -

PHP はダメ?理由を考えてみた [php]

私は現在、PHP をメインにプログラムを作っています。
他の言語を使うこともありますが、web の仕事はほぼ PHP です。

たまに、「PHP はダメだ」とか「PHP は使えない」という話しを聞きます。
個人的には、使えるモノは使えばいいと思っているのですが・・・。



PHP のメリットは、初心者がとっつきやすいということだと思っています。
プログラマーであれば、多少さわったことがあるという人はたくさんいます。
ちょっとしたツールであれば、簡単に作れます。
わからないことがあってもインターネットで検索すればいくらでも情報があります。
ほとんどのレンタルサーバーでは最初から PHP を使えるようになっています。
コンパイルなどの作業がいらず、書いたコードの結果をすぐに確認できます。


ただ、簡単にそれっぽいモノが作れてしまうため、いいかげんなコードもたくさん公開されています。
また、PHP は、言語仕様が厳格ではありません。1つのことに対していろいろな書き方が出来てしまいます。
この辺が、「PHP はダメ」と言われるような気がします。



もともと、PHP は、「動的にHTMLを生成する」ために作られています。
システムを作ったり、ハードウェアを制御するための言語ではありません。
ここが他のプログラミング言語と大きく違う部分です。
最終的にHTMLを生成できればいいので、言語仕様を厳格にする必要がないのです。


現在のPHP は、バージョンアップを重ねて、大規模なシステムも作れるようになっています。
ただし、初心者が簡単に作れるわけではありません。
他の言語のように、言語側がある程度コントロールしてくれるということがないため、すべて自前で書かなければいけないというイメージです。
知識や経験が無いと、穴だらけのシステムになりやすいのも、PHP の特徴です。



とはいえ、PHP は手軽なうえ、少ない工数で開発できるスクリプト言語です。
PHP での開発を指定される仕事もよくあります。
デメリットもたくさんありますが、それをわかった上でうまく使っていけばいいのではないでしょうか。



タグ:PHP

在庫管理 デモ版を公開しました! [在庫管理]

ここ数ヶ月、在庫管理システムを作っていたのですが、デモ版を公開しました。
適当なデータを入力できるようにしてあります。

在庫管理 検索.jpg
在庫管理 デモ版

もともとは、某社さんから依頼を受けて作った倉庫管理のシステムなのですが、他の会社さんからも使いたいという要望が有り、一般向けの在庫管理システムに作り直しました。


機能としては、以下のようなことができます。

>複数の倉庫を管理できる
>スマホから在庫の確認
>品名の一部で検索可
>一人ずつアカウントを持ち、ユーザーごとにメニューや担当倉庫を限定できる

>発注
 発注データの入力
 発注データの修正・キャンセルは、入力したユーザーのみ可

>在庫管理
 商品の数量管理(指定数量以下になると赤字で表示)
 発注データで納品確認
 発注作業なしの入庫にも対応
 商品を別の倉庫へ移動
 数量の増減には、説明を追加できる
 商品画像の表示可
 賞味期限、消費期限などの管理可(有効期限が近づくと赤字で表示)

>履歴表示
 入出庫の履歴と発注の履歴を一覧で表示
 伝票などのチェックに利用



すでに、運用を開始しているところも数社あります。
現在のところ、独自ドメインで運用するシステムになっています。
料金は、会社の規模(データ量)によるので、お問い合わせください。
ぶっくま!から問い合わせてもらってもかまいません。

在庫管理 デモ版



開発費を回収するためには売っていかないとなのですが、まだ体制が整っていません・・・。
少しずつ進めていきます!

その前にシステムの名前を考えないとかな?
何かいい名前ありませんか?(笑)




nice!(1)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

SQLSTATE[42000] [1044] でアクセスできない!? [php]

先日、「サーバーを新しくしたらプログラムが動かない」というので、見に行ったのですがハマりました。

どこかで購入(?)したシステムをインストールしたらしいのですが、データベースの接続時に、

 SQLSTATE[42000] [1044] Access denied for user 'ユーザー名'@'localhost

というエラーが出ていました。
SQLSTATE[42000] [1044] は、指定されたユーザーのアクセスを拒否する というエラーです。


状況としては、
●システムのインストールは成功している
●データベースは作ってある
●phpMyAdmin にはログインできる
●ユーザー名やパスワードは間違っていない


エラーメッセージからすると、ユーザー名やパスワードが間違っているのかと、いろいろ試したのですが状況は変わらず。

再度、サーバーの設定を確認していたら、データベースのポート番号が '3307' になっていました!
なぜそうなっていたのかはわかりませんが、localhost は '3306' なので、明示的に指定しなければつながりません。
が、そもそもポート番号を指定するところが無い!?


インストールしたシステムが php で作られていたので、ソースを覗いてみたら、データベースに接続する部分が、以下のようになっていました。
	$this->pdo = new PDO(
		sprintf('mysql:dbname=%s;host=%s;charset=utf8',
			DB_NAME,
			DB_HOST
		),
		・・・


なので、ポート番号を指定するように書き換えました。
	$this->pdo = new PDO(
		sprintf('mysql:dbname=%s;host=%s;port=%s;charset=utf8',
			DB_NAME,
			DB_HOST,
			DB_PORT
		),
		・・・


これで、
 DB_HOST に、データベースのIPアドレス(localhost ではない)
 DB_PORT に、データベースのポート番号('3307')
を指定することで、解決しました。



今回ハマった原因は、データベースのポート番号は '3306' だと思い込んでいたこと。
プログラムにポート番号を指定する箇所が無かったため、なかなか気づきませんでした。

「これはハマるだろうなぁ」
と思ったので、記事にしてみました。




サーバーエラーが発生しました [ぶっくま!]

2017年6月25日(日)13:48 頃、サーバーエラーが発生しました。
現在は復旧しております。

原因は、データベースのバージョンアップにより、プログラムが正常に機能しなくなったためでした。
すべてのプログラム見直し、修正しました。



具体的には、バージョンアップにより数値フィールドに空白を代入するとエラーになる仕様に変更になったため、プログラムに空白を代入している箇所に、-1 を入れるように修正しました。

数値フィールドに数値を入れるのは当たり前なのですが、空白にも意味を持たせていたため、ちょっと甘かったですね。




紹介していただきました! [ぶっくま!]

ぶっくま!を紹介してくれているサイトを見つけたので、紹介します!

PCとのブックマーク共有に使える!最新オンラインブックマークサービス4選



最近、新たなサービスを作っているので、ぶっくま!に手が回っていません。
が、いろいろ直したい部分もあるので、順次修正していきます!



タグ:紹介

ぶっくま! 修正しました [ぶっくま!]

ぶっくま!を公開してから半年ほどたちました。

ときどき(いい意味で)こちらの想定していなかった使い方をする人が出てきたりします。

現状では、機能不足でできなかったりしていますが・・・。

なので、将来的に拡張できるように、内部構造を変更しました。

プログラム的には大幅に修正したのですが、使い方は今まで通りです。

今後、少しずつ機能追加などをしていきたいと思います。



ついでに、トップページに写真を入れてみました。

見た目で変わったところはそれだけです・・・。




タグ:修正

オーディオインターフェイス [雑談]

知り合いに頼まれて、オーディオインターフェイスを買ってきました。

パソコンで音楽やっている人にはおなじみの周辺機器なのですが、それ以外の人にはあまり知られていないかもしれません。
オーディオインターフェイスは、パソコンで「音」をやりとりするための周辺機器で、マイクや楽器の音を録音したり、MIDI データを外部音源で演奏させたりするときに使います。
パソコン用のスピーカーに不満があるなら、オーディオインターフェイスの出力をステレオにつないで、ステレオから鳴らすということもできます。

今回は、動画にナレーションやBGMを入れるために導入しました。


Steinberg UR22mkII
購入したのは、Steinberg の UR22mkII という USBで接続するタイプのオーディオインターフェイスです。
USBでパソコンに接続しておけば、外部電源は必要ありません。
入力は2系統ですが、今回は動画にナレーションを入れるのが主な目的なので、これで十分。

UR22mkII


ハイインピーダンスの入力にも対応できるので、ギターなどは、ラインでそのままつなぐことができます。

一般的に、マイクで音声を録音すると音量が小さくなるのですが、GAIN を最大にしておけばなんとか使える音量になりました。
UR22mkII からファンタム電源も供給できるので、キャノン(XLR)ケーブルでつなげば、コンデンサーマイクも使えます。

モニタすることもできるので、ヘッドフォンで音を確認しながら録音することもできます。

今回は使いませんが、MIDI 端子もあるので、外部音源やシンセサイザーなどをつなげることもできます。

UR22mkII 前面

UR22mkII 背面



UR22mkII のドライバーは、付属のCDに入っていますが、最新版は、Steinberg のホームページ からダウンロードできます。

また、音楽を作成するためのソフト Cubase AI がバンドルされていますが、これはダウンロードする必要があり、ちょっと面倒・・・。
専用ページにアクセスして、アカウントを作成し、製品のシリアルナンバーを入力すると、アクティベーションコードが発行され、ダウンロードできるようになります。

専用ページ

Cubase は、音楽の知識が無いと簡単には使いこなせないので、音楽を作成しないのであれば、ダウンロードしなくてもいいと思います。



認知症サポーターの養成事業 [雑談]

高齢化社会になり、65歳以上の5人に1人が認知症になるといわれています。
認知症で徘徊しているお年寄りが死亡したというニュースもよくあります。
でも、歩いているお年寄りが認知症なのか見分けることは難しいですし、わかったとしてもどう対処したらいいのか分かりません。

ninchisyo.png


「認知症サポーターキャラバン」という事業を、厚生労働省が行っています。
「認知症サポーターキャラバン」は、認知症になっても安心して暮らせるまちづくりを目指した取り組みで、「認知症サポーター」を全国で養成しています。
認知症のことをよく知り、認知症の人や家族を温かく見守り、支援するのが「認知症サポーター」です。


認知症サポーターには、次のようなことが求められています。
  1. 認知症に対して正しく理解し、偏見をもたない。
  2. 認知症の人や家族に対して温かい目で見守る。
  3. 近隣の認知症の人や家族に対して、自分なりにできる簡単なことから実践する。
  4. 地域でできることを探し、相互扶助・協力・連携、ネットワークをつくる。
  5. まちづくりを担う地域のリーダーとして活躍する。

認知症サポーターになるには、各自治体が行っている「認知症サポーター養成講座」を受講します。
役所の認知症対策窓口や高齢者支援を担当する課などで受け付けています。

講座は、専用のテキストやビデオを使用し、認知症の症状や認知症の方に接する時の心構え、認知症サポーターにできることなどを学びます。
時間は90分程度で、受講料は無料(会場によっては有料)です。


>> 厚生労働省 認知症サポーターキャラバン
>> 地域ケア政策ネットワーク




タグ:認知症

電力小売全面自由化 4つの疑問 [雑談]

2016年4月1日から、電力の小売りが自由化され、電力会社を自由に選べるようになりました。
興味はあるのですが、よくわからないので、調べてみました。

ene01.png


新たに電線が必要?
送電線や配線は、既存のものを利用することになり、新たに電線を引く必要はありません。


停電になる?
電力の小売契約先が変わったからといって、停電になることはなさそうです。
また、小売契約先が倒産した場合、新たな供給元が見つかるまでの間は、各地域の電力会社(東京電力、関西電力など)から供給を受けることになるため、すぐに電力供給が停止することはなさそうです。


スマートメーターは有料?
電力の小売自由化によって、消費者が新たな機器を購入・導入する必要はありません。
ただし、消費者側の都合で、スマートメーターの設置場所を変更したいとか、メーターを取り替えたいといった場合は、工事費用を負担することになる場合があります。


アパートやマンションでも切り替えできるの?
アパートやマンションでも、電力会社の切り替えはできます。
ただし、建物全体で一括して電気の購入契約を締結している場合もあるので、その場合は、管理組合などに確認する必要があります。



いろいろ調べてみたのですが、まだ、小売電気事業者のサービス内容も横並びといった印象で、個人的には、もう少し様子を見てみてからと思っています。
今後、生活スタイルに合わせたサービスプランが出てくるのであれば、電力会社を切り替えるメリットはありそうです。

>> 資源エネルギー庁 電力小売全面自由化




タグ:電力自由化

コンビニのコピー機をプリンタとして使う [Web サービス]

コンビニに設置してあるマルチコピー機。コピーだけでなく、ファックスとして使えたり、スキャナーとして使えたりしますが、ネットプリントもできます。

ネットプリントサービスは、ウェブサイトに印刷したいファイルを登録しておくと、プリンタとして利用できるというサービスです。アプリもあるので、スマートフォンからも印刷できます。

各サイトでアカウントを作り、ログインすると、ファイルを登録できるようになります。
Word、Excel、PowerPoint、PDF、JPEG 画像などが印刷できるので、困ることはほとんどありません。


netprint
netprint は、セブンイレブンのマルチコピー機をプリンタとして使うためのウェブサービスです。

netprint01.png
>> http://www.printing.ne.jp/

パソコンやスマホなどからファイルを登録すると、ファイルごとに、プリント予約番号が発行されます。
セブンイレブンのコピー機に、プリント予約番号を入力すると、印刷することができます。

ファイルごとに、プリント予約番号が発行されるので、印刷物を渡したい相手に、番号を教えておくことができます。



ネットワークプリントサービス
こちらは、ローソン、サークルK・サンクス、ファミリーマート、セイコーマート で使えます。

netprint02.png
>> https://networkprint.ne.jp/

ネットワークプリントサービスでは、アカウントを作成すると、ユーザー番号が発行されます。
ファイルを登録し、コンビニのコピー機にユーザー番号を入力すると、登録したファイルの一覧が表示され、選んだファイルを印刷することができます。

毎回、同じユーザー番号を入力すればいいので、自分用のプリンタとして使うには便利です。




大量に印刷する場合は、料金的には高いかもしれませんが、たまに使うには十分です。
紙やインク(トナー)を気にする必要も無いし、外出先でも使えます。
営業などで外回りが多い人などは、「書類が間違っていたから会社に戻る」ということもあるかと思います(私はよくありました)が、会社にいる人に修正した書類を登録してもらえば、近くのコンビニで印刷できるので、余計な手間をかけずに済みます。

ただし、ネットプリントサービスが使えないコンビニの店舗もあります。
たぶん、インターネットの回線を引いていないとか、古いコピー機のため対応していないとかだと思いますが、注意が必要です。





前の10件 | -