個人店の開業とネットショップ開設

皆さんがご自宅で開業をしたいと考え始めると、どうしても気になってしまうのが個人のウWebサイト開設ではないでしょうか。パソコン1つで開業できるネットショップは、大変魅力的なビジネススタイルでもありますが、何から何までを個人で行わなくてはなりませんので不安を抱える方々も多いようです。最近では個人のホームページなどを制作しなくても、身近なネットショップサービスなどを活用することによって気軽に開業する方々の姿も増えてきているようです。気軽に利用できるネットショップサービスとは言いましても、実際には条件によって販売手数料などが発生することになりますので、各サービス内容をきちんと確認した上で利用していただくのが何よりです。また実際にネットショップを個人的に構えたとしても、集客などに悩みを抱える人々が多いようです。 Twitter や Instagram などのソーシャルメディアをうまく活用しながら、何よりも出来る限り数多くのお客様の目に皆さんの開設されるネットショップの存在が拡散されることが集客を行う上でのポイントとなってくるでしょう。

SNSを集客につなげよう

皆さんの運営されるホームページへの集客方法の一つに 、SNS を活用した集客方法があるそうです。世界中の人々が利用している Facebook、 LINE、 Twitter、 Instagram などのSNSから、皆さんが運営されるホームページへの勧誘情報を配信し、それらの情報配信に興味を持っていただいたお客様をホームページへと誘導する集客方法であるようです。実際に皆さん自身も Facebook や LINE、 Twitter、 Instagram などを利用するにあたって、それぞれのSNSを経由して、各企業サイトや個人事業主の方々が運営するホームページに、なんとなく勧誘されるようにリンクしたことなどはありませんか。人々の興味を刺激しつつそれぞれの人々が興味のある事柄へ、うまく誘導することをも Web 上での集客術とされているようです。多くの人々が、アカウントを開設している Facebook 、LINE、 Twitter、 Instagram であれば世界中のSNSユーザーの目に留まることにもなりますし、大勢の人々に皆さんのホームページの存在をお伝えするチャンスにも恵まれることにつながるのです。

まちがったサイトとは?

正しいサテライトサイトは、「月」のようなイメージでしたが、まちがったサテライトサイトは、前述通り人工衛星のようなイメージです。
役割を終えた人工衛星は、宇宙のゴミとなるわけですが、まちがったサテライトサイトは、初めから宇宙のゴミならぬ、インターネットのゴミとして生まれていると言っていいかもしれません。
アフィリエイ卜や情報商材にハマっている人に多く見られるのが、無料のブログサービスを使って、たくさんのブログを公開する手法です。
一つひとつのブログに、ていねいに書き込むことが難しいので、効率を重視するあまりスプログやワードサラダといったスパム行為に手を染めてしまい、結果的に検索サイトからペナルティを受けてしまったり、心ないコンテンツなのでユーザーを集められす成果が出なかったりするのです。
アフィリエイ卜や情報商材そのものの良し悪しは別として、儲けるためのWebサイトの作り方が良くないのです。

※ スプログやワードサラダのような人工衛星からのアクセスは、メインサイトの評価を下げる可能性があります。

いらないデータを削除します

いらなくなったデータなどを削除できる機能があります。削除機能というものです。URLパラメーターに従ってデータを削除します。dalete.phpを作成しましょう。データを削除するSQLはDELETEとなります。URLパラメーターは数字であるかを判断します。prepareメソッドとexecuteメソッドでSQLを実行します。これを詳細画面からリンクを張る作業をします。そうしてmemo.phpを変更します。

作成をCreate、表示をRead、変更をUpdate、削除をDeleteとなります。これらの頭文字をとってCRUDシステムと呼びます。これはデータベースを利用したシステムの基本となります。管理したいデータに沿ってCRUDシステムを構築しましょう。こういったことを使ってデータベースを便利に活用していきましょう。PHPとMySQLについての基本ができるようになったら、やはり次はその知識を応用してみましょう。少し実用的なプログラムの開発にチャンレジしてみるといいかと思います。

Twitter風のひとりごと掲示板を作成をしてみましょう。まずデータベースを設計します。プログラミンを始める前には、どのようなシステムを作るのか、そのためにはどのようなデータベースが必要なのかを考えるところから初めます。やはりパソコンの向かっていきなりPHPを作るというのはハードルが高すぎまう。何から手をつけたらよいかわからない、というのは当たり前。効率の良いプログラムを作るには、何が必要なのでしょうか。ひとこと掲示板を作るにあたって、どのような機能が必要か、どんなプログラミングが必要か考えてみることが必要かを考えましょう。

カラムは絶対情報で作ろう

ショッピングでよくある、売上ランキングというものですが、rankというINT型のカラムを作成してデータを作ったとしたものをランキング順に取り出すとしたら「SELECT*FROM my_items ORDER BY rank ASC;」これでうまく機能するようになるのですが、うまくいかないのが困ったところ。ランキングという概念ではなく、例えば売上順なのであれば、売上数を評価順なのであれば点数を記録するということです。順位というのは、その他の情報に比べた位置を示すもので、相対情報となります。相対情報というのは、他の情報変化に応じて変わってしまうということで、データベールのカラムとして考えると、あまり好ましい情報ではありません。この絶対情報を記録して、その並び替えなどを行うことで、相対的なランキングなどの情報を作り出せるようにカラムを作りましょう。カラムを作るときは、頭に入れておいたらよいそうです。データによっては、社員番号やISBNといったもののように、必ずしも新しさとは一致しないケースもでてきます。新着順や古い順というような並び替えでは対応できないものです。データをぬ入力した日を記録するようにしましょう。phpMyAdminでmy_itemsテーブルを表示して、1つのカラムを最後に追加します。createdカラムをDATETIME型で作成しましょう。日付というのは、決まった書式で挿入しないといけません。もし、実際にデータを挿入した日を挿入したい場合は、「NOW()」という特別な記述を使うようにすると便利です。さらにデータを変更した日を基準にしたい場合もあります。また更新日というのも便利にできる型があります。

ファイルのアップロード

ファイルアップロードは、フォームの中でも、難易度が最も高いものです。写真などのアップロードや書類の受け渡しなど、使いみちの広いコントロールです。このプログラムはぜひマスターしましょう。ファイルのアップロードの仕組みを作るのは、フォームの作り方を工夫しなければなりません。「encode type」の略称でエンコードと呼ばれる作業をします。これはフォームを送信するときに、そのままの形では送信できないからです。「multipart/form-date」という種類は、文字情報のみのフォームにプラスして、ファイルをそのまま送信することができる方式です。ファイルをアップロードするなら、必ず、この属性が必要とないます。それから、ファイルアップロードでは、form要素のmethod属性で必ずpostを選ばなければなりません。getではファイルが送信されないので注意が必要です。プログラムの内容ですが、フォームの内容は、$_GETまたは$_POST,requestで取得できます。アップロードされたファイルは特別な変数「$_FILES」で渡されます。連想配列として格納されているので、例えば「$_FILES」などとキーを指定して取り出します。インデックスにはinput要素の「name」属性に指定した値を指定します。$_FILESで受信した内容は、さらに連想配列になっています。ファイルアップロードは、フォームが送信すると一時的にそのファイルを保存します。このファイルをプログラムの指示に下gっt、適切な場所に移動するということです。この一時的に保存されたファイルを移動するファンクションが「move_uploaded_file」です。

いたずらから守るためには

シングルクオーテーションの前に「\」記号、または¥マークが表示されるプログラムがあります。こういった場合はPHPの設定で、「magic_quotes_gpc」という項目が有効になっているためです。これはクオーテーション記号を自動的に無害化するという機能です。PHPの安全性を高めるためのものでもあります。ウェブサーバーやレンタルサーバーによって設定は異なります。自分で設定を変えることもできます。MAMPやXAMPPのバージョンによっては、何も名前を入力せずに送信したら、「Notice;」から始まるエラーメッセージが表示されたりします。もちろん実際にプログラムを作るときに、この警告が表示されないように作った方が良いです。でも、それではプログラムが非常に複雑になってしまいます。勉強している初心者の場合は、一時的に非表示にしてしまっておきましょう。XAMPPの場合は、XAMPP Control Panelを開きます。Apacheの「Config」のボタンをクリックして、「PHP」を選びます。MAMPの場合は、アプリケーション→MAMP→conf→PHP7.x.x→php.iniをエディタで開きます。「PHP7.x.x」は、最も番号が大きいフォルダを開きます。MAMP、XAMPP共通なのは、error_reporting=…をerror_reporting=E_ALL & ~E_NOTICEに書き換えます。これをして、XAMPPやMAMPを再起動したら、警告は表示されなくなるそうです。いろいろと理解できないことも多くても、この時点では問題ありません。ひとまずやってみて、不思議に思わなくていいようです。

フォームの動作確認

「!empty($_POST)」の戻り値がtrueである場合、フォームが送信されていた場合、内容をチェックしていきます。名前、メールアドレス、パスワードのそれぞれが空であるかを確認して「$error」という配列を作成します。そこに「blank」と入れておきましょう。これはあとでエラーメッセージを出力するために使用することになります。「blank」という値自体には意味はありません。「空」でも「1」でも見分けさえつけば何でも構いません。また、パスワードの文字数も「strlen」ファンクションで確認します。4文字以下の場合は、「length」というエラーとして記録しています。このように、すべての確認が終わったら「$error」配列が空であるかを判断しましょう。もし空の場合には、すべての項目の代入が正常ということがわかります。セッションに値を保存します。そして「header」ファンクションで次の画面に移動しましょう。今作った「$error」配列を使うことでユーザーに異常箇所を知らせることができます。ニックネームのHTMLを変更してください。そのとき、「$error]配列のキーが「name」の内容を見るように記入します。ニックネームが空だった場合には、エラーメッセージを表示するというものに変更します。今度はニックネーム欄に適当な名前を記入してください。それを送信しましょう。メールアドレスなどが正常に入力されていないので、再び入力画面に戻ってしまうと思います。この時、入力した名前は消えてしまいます。消えるたびに入力するということでは、とても不便なので入力した内容は常に再現されるようにしておきましょう。

強力なロボットを作ろう

ここでいうロボットというのは、プログラムの通りに動くコマのクリップのことです。クリップでも消しゴムでもいいので、用意しましょう。プログラムというのはロボット自身に判断させることができるというのが醍醐味でもあります。プログラムで決められた動作をするだけでなく、ロボット自身が判断してどんな迷路も進むことができるようなロボットを作ることも可能となります。ただ、付箋ブロックの「前に進む」「右に回る」といった命令だけしていたのでは、ロボットとしては物足りないものとなります。もっと発展的なロボットを作るために、付箋ブロックに「もし()なら」と書いたものと、「()まで繰り返し」、「ここまで」を加えます。これでとても賢いロボットを作ることができます。たとえばマス目をつなげて迷路を作らず、直線を進むだけになるように、マス目を5つ直線につなげたものを作ってみましょう。前にす進むだけですから、付箋ブロックは「前に進む」「前に進む」「前に進む」「前に進む」です。5つだから4枚でいいですが、100マスの迷路だったら、付箋ブロックは100枚必要になってきます。こういったときに「繰り返し」付箋ブロックを使います。繰り返し付箋ブロック「(4回)まで繰り返し」「前に進む」「ここまで」を貼ります。こうすることで、4回「前に進む」を繰り返すことになります。この「()繰り返す」付箋ブロックの()には回数以外にも書くことができます。「(ゴールする)まで繰り返し」と書けば4回といちいち数字を書く必要もなく、ゴールするまで前に進んでくれるわけです。これなら3マスだろうが1000マスだろうが、対応することができます。

PHPの制御

クオーテーションの使い方には注意が必要です。例えば、「I’m studying.」というような文章には「’」がありますが、プログラムで「Print(’I’m studying’)とするとエラーがでます。シングルオーテーションが文章の一部なのか、PHPの記号なのかを判断できないからです。どこでパラメーターが終わっているかわからないということです。そういった場合はダブルクオテーションを使います。Print(“i’m studying”):とすればいいのです。両方の記号が混ざっている場合には、\または¥マークを補うことで使うことができます。もし、エラーメッセージが表示されないという場合もあります。エラーが発生するプログラムを試しても、画面が真っ白になるようでしたら、PHPの設定がおかしな場合かもしれません。そういうときは修正が必要です。「php.ini」というファイルを探します。XAMPPでは「C:¥xampp¥php¥php.ini」です。MAMPはアプリケーションフォルダ内の「MAMP/conf/php7.x.x/php.ini」などとなります。「php7.x.x」では最も大きな番号のファイルを開きます。エディタで開いて「display_errors=off」を探して、「display_errors=On」に変更します。そうしてXAMPPまたはMAMPのウエブサーバを再起動します。これで表示されます。また、その他のエスケープシーケンスとして次のようなものがあります。\nは改行、\rがキャリッジリターン、\tタブ、\が\、\$が$ 、\”が” \’が’ です。エスケープシーケンスを使う場合は、その両端は「”」で囲む必要があります。