母とホームページとPHP

ことの始まり

父は自分で機械設計の会社をやっている
会社と言っても、父と母+パート1人とかそんな規模
メーカーの下請が多いけれど、やはり自社で売れる製品を持ちたいというのが目標
なんとかできた製品たち、それを紹介するにはやっぱりwebじゃね?ということでホームページが必要に

ということで息子の自分がさくらインターネットホスティングの契約して、WordPress使って簡単なものを作った。
入社前なので、3,4年前の話。

新しい製品ができたのでホームページを更新したい!

→息子は仕事で忙しい…
→ならば母だ!
という事で母が会社のホームページ作りをすることに
そしてなんとか作り上げた。WordPressではなくバリバリのHTMLで
あるサイトの無料のテンプレートをもとに作ったそうな

株式会社ヒート http://heat-inc.info/

htmlが印字された紙に色々メモ書きがしてあったものがあったりして、単なるコピペではなくもう一つ踏み込んで作ったようだ。
テンプレがあるからもちろんだけれど、見栄えも良く素直に感心してしまった。

そして 息子の出番

サーバへのアップロードは実家で説明しつつ俺がやり、とりあえず見える様になってめでたしめでたしと思いきや、肝心の問い合わせフォームが動かない

htmlの中でpostでform.phpに投げているのだけれど、どうもphpが動いていないご様子。
送信ボタンを押すと、なんとそこには真っ白なページが。。。

「母も色々頑張ったみたいだけれど、わからん。息子助けろ」という父からのメールを受信
さてさて

さくらインターネットsshログイン

ブラウザであーだこーだやっても原因なんてわからず、しかも普段はサーバに入ってログ見てソース見てという作業をやっているのでフラストレーションが溜まる溜まる。
ということでsshでログイン。あらやだ、FreeBSD...
会社で使ってるのはCentOS,Debianなので少し面食らう。

vimないよvim

そもそもシェルがbashじゃないのでbashに切り替え。
よし、ファイル開いちゃうぞーと思ったらあれ、、

$ vim
bash: vim: command not found

viはあるけれどvimではないし、開きたいファイルはおもいっきり日本語sjisなんかでかかれていますぜ、という状態なのでどうすっかとさくらのhelp見てたら

日本語編集?viクローンのelvisを使えks

とのことなので、使う。なぜ名前がプレスリーなの。。。
使ったがキーバインドやら挙動が微妙に違うのでこりゃ無理だとなり結局vimインストール

php -cないのー?

perlでsyntaxチェックといえばperl -cついでにwarnings付けちゃうぞってことでperl -wcだけれど、
phpは?ということで調べると、php -l でおkとのこと

$ php -l form.php
Errors parsing form.php

何行目だerror
エディターでsyntaxチェックとかまで踏み込むつもりもなかったので、
まずはほぼコメント扱いにして、php -l通ったらブロック単位でコメント扱いをやめて、、という方法でデバッグした。

プログラム的に駄目だったところ

  1. 全角スペースが入っていた
    • インデントが揃っていたようにみえたけれど全角スペースが混じっていてそれがいけなかった
  2. 連想配列のkeyの指定の仕方がおかしい
    • 筈なのに動いている風の部分もあって正直phpちゃん謎。とりあえずwebで見つけた例の通りにすべて修正したけれども

というだいたい2点。
最初はsendmailが〜とか、文字コードが〜とか、、、ややこしそうなのを予想していただけに終わってみれば初歩的なミスでした。

要するに

母を見直すことができ、なおかつ親孝行もできるという素敵なイベントだった