現在、飲食店のホームページをPHP・Mysqlで制作しております。
それで下記のような値段表や求人の内容を変更出来る管理画面を作ることになりました。
メニュー例
サンドイッチ:400円
コーヒー:300円
Aランチ:1000円
求人例
時給:800円
待遇:交通費負担
ですが、サンドイッチ等の項目名自体も変えたい、そして項目も追加・削除出来るようにしたい場合、コード化すると良いと熟練の方にアドバイス頂いたのですが、それ以上は聞けませんでした。
コード化とは具体的にはどのようにするのでしょうか。
SQL文も調べながら書き、クラスの作り方も最近覚えたばかりのレベルなのですが、職場に聞ける方もおらず今回ご質問させて頂きました。
具体的なスクリプトや考え方が見れるサイトなど教えて頂けますと幸いです。
PHPとMySQLができるということは、PHPからデータベースに接続して、
クエリやプロセジャを実行することは既にできるという前提で良いでしょうか?
であればインターフェイスの構築は好みですが、個人的にはjqueryのdataTableが好きです。
http://datatables.net/
http://datatables.net/release-datatables/examples/api/editable.html
http://d.hatena.ne.jp/ichhi/20110331/1301573264
2つ目のリンクにあるサンプルでは、セルをクリックするとそのまま編集ができるようになっています。
データの取得、編集、追加、削除に関しては処理用のページを別途設けajaxでコール、
編集や追加、削除の場合は、処理完了後にデータの取得を再度実行してdataTableを更新する感じです。
他にも、ソートや検索結果の表示件数の絞り込みなどが簡単に設置できます。
javascriptやjquery、ajaxがどうしても苦手と言うことであれば、
各操作をフォーム送信(POST)で行うことになると思います。
dataTableのサンプルのようなテーブルを書いて、編集・追加・削除などのボタンを設置。
編集・追加がクリックされたら、ajaxをコールするのではなくデータ入力の画面へ転送。
そこでデータを入力して送信を押すと、クエリやプロセジャが実行されるという構造ですね。
このJqueryの場合、項目の追加はどのように行うのでしょうか?
追加部分は自分で作成し、ボタンを押して貰うようなかたちになってしまいますでしょうか。
インストールしてブラウザアクセスするとJsonが読込中で止まり、Jsonのパースエラーになるのですが、最初にそのような事がありましたか?
DataTableはあくまでデータの表示が主目的なので、どういった動作をさせるかはデータベース側で処理を行った後、
DataTableを更新する際に処理されたデータを正しく提供することが鍵です。
普通に追加フォームを設置しても良いですし、そこは好みの問題になりますね。
僕はjQueryのDialogを使ってポップアップ的なdivの中に追加フォームを設置するのも好きですが。
http://jqueryui.com/demos/dialog/
いずれにせよ、追加フォームの送信ボタンはajaxコールでINSERTクエリを、
編集ならUPDATEクエリを実行するようにしておきます。
で、ajaxのsuccess処理の中でdataTable.fnDraw()をコールすれば、
画面を更新せずともdataTableだけ描きなおしてくれるという仕組みです。
Editorはちょっと分かりませんね、すみません・・・。
Webは本業じゃないため、DWかVSしか使ったこと無いので。
ただ、json自体はSOAPなどと違って複雑なフォーマットではないので、
読み込んでいるjsonデータを見れば結構分かると思いますよ。
http://ja.wikipedia.org/wiki/JavaScript_Object_Notation#.E8.A1.A8.E8.A8.98.E6.96.B9.E6.B3.95