質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1870閲覧

PHPのファイルを増やしすぎている気がします

mi_

総合スコア80

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2017/01/23 08:37

お世話になります。

長い話で大変申し訳ないのですが、

もともとPHPメインで勉強を始めたのですが、canvasの機能をつけるときに必要にかられてJavascriptで未入力や注意を換気する画面、未入力があれば進めないなどの制御をしたときに非常に便利だと思いました。

初心者向けのPHPの本で練習した内容にそって、入力のPHPファイル、次のチェックをするPHPファイル、最後にデータベースに書き込みをするPHPファイル。削除画面は、削除のチェック画面のファイル、データベースから削除するPHPファイル。修正の入力画面のファイル、修正の確認のファイル、修正内容をデータベースに書き込むファイル。と、機能を追加する度に、2~3個のファイルが増えていきます。

最初は不慣れ過ぎたので、それぞれのファイルとなっている方が分かりやすかったのですが、実際に先輩方はJavascriptなど、またはその他の機能を併用して、ファイル数が増えずに機能を追加されているのではないかと想像しています。

自分ひとりで作っていて、作ったものを利用する環境は、身内のスマホやパソコンのChromeのブラウザ、iPadのsafariくらいまでを想定しています。フレームワークは、プログラムそのものに不慣れすぎるので使わないようにしたいと思います。(必要とあれば取り組みたいと思います)

PHPだけで作るメリット(PHPと何かを併用しない方がいいメリット)、またはJavascriptか、その他などを使われる際に、単一の画面に機能をもたせるのは可能なのか、当たり前なのかなどについて、どのような方針、やり方でされていますでしょうか?関数などもそろそろ使った方がいい気がしてきました。

みなさんのご意見をお借りしたいと思います。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

まずphpとjavascriptはWEBアプリケーションの中で立ち位置が違います。
phpはサーバで動き、javascriptはブラウザで動きます。
乱暴な例えですが、phpやhtmlデータをブラウザにドーンと読み込み、その後CSSで整えJSで動かします。

htmlもphpもjavascriptも上から順番に読み込みますので、どのタイミングでどう動かす、というのを意識しながらコーディングする必要があります。

「phpが増えすぎる」という気持ちも分かりますが、最初のうちはしょうがないかもしれません。
一通り動くようになったら、「このファイルとこのファイルは同じファイル上で動かせるな」みたいな気付きがあると思いますので、経験と共に洗練されたコードになると思います。
周りに教えてくれる人がいれば近道できますが、独学の場合は自分のペースで出来る代わりに近道が出来ません。地道にやりましょう。

最近の主流はMVCモデルで出来ている事が多いです。
MVCモデルの概念を漫画で解説してみる
慣れてきたら挑戦してみてください。

慣れてきたらcakeやzend等のフレームワークを使うのも手です。私はフレームワークに手を出さないまま事を進め、フレームワークが使えずに後悔しています・・

投稿2017/01/23 09:22

takepieee

総合スコア686

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mi_

2017/01/23 15:41

ご回答ありがとうございます。MVCモデル、以前はややこしいだけ、と思っていました。ご提示いただいた漫画や解説をみると、ちょうど最近いろいろなサイトでCSSでいろんな表現をされてるのをみて、時にはデザインに専念したい、またはデザインの人に任せたいとも思いますので、MVCモデルは早めに取り組むべきところのような気がして来ました。 フレームワークはどれがよいか、と考えているとフレーム使わなくてもいい、初心者は使わない方がいいという意見を目にして、勉強に時間がかかりそうで、そのままになっています。
takepieee

2017/01/24 01:00

フレームワークが何をやっているのか分からない内はフレームワークを使わないほうがいい、には私も同意です。不具合が出た時に制作者である自分が原因が分からないとか、そういうのは著しく信用を失います。 誰もが通る道とは思いますが・・ 依頼者の意図するWEBアプリを作るのにフルスクラッチで対応するというのは本来あるべき姿です。ですが実際には納期や予算が存在するのでフレームワークで近道する、というのが実情でしょう。 MVCは慣れるとメンテナンスしやすいですよ。切り分けが出来ますので。 不具合の症状を訊いただけで「ああ、この部分だな」と分かりますので。 持論ですが、最初はベタに作ってもいいと思っています。効率的にファイルをまとめる、何がいいのか分からないけど関数を作る、クラスを作る、その中で自然とMVCになると思っています。
mi_

2017/01/24 08:15

大変詳しくありがとうございます!
guest

0

僕は簡単な入力チェックはHTML5の機能を利用しています。

【参考URL】
http://www.casleyconsulting.co.jp/blog-engineer/jquery/html5%E3%81%AE%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%83%90%E3%83%AA%E3%83%87%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AB%E8%A7%A6%E3%82%8C%E3%81%A6%E3%81%BF%E3%81%9F/

どのように拡張していくかにもよりますが、とりあえず拡張するにあたり関数を使ってみたり、javascriptのイベントでチェックしてみたりを試してみて拡張してみてはいかがでしょうか。

そのうえで元のコードとどれだけコード量が違うか、メンテナンスのしやすさなどが見えてくると思います。

投稿2017/01/23 09:01

s.t.

総合スコア2021

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mi_

2017/01/23 15:25

ご回答ありがとうございます。 参考URLにあるHTML5の入力チェックのコードがその部分の直下に書かれていたりで使いやすそうです。正しい入力を促すという、入力補助になる点、すごく便利そうです。取り入れていきたいと思います。 メンテナンスのしやすい、みやすい構造にしたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問