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

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

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

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

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

2回答

507閲覧

キャラクターシートのデータ保存の方法

Suguru_KP

総合スコア12

PHP

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

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2019/02/10 14:51

編集2019/02/10 15:11

ページを閲覧していただきありがとうございます。

・PHP,Javascript,jqueryのどれかで実装できる。
・不特定多数に閲覧できる。
・ブラウザや端末を変えても閲覧できる。
・膨大なデータを保存できる。
・なるべくサーバーに負担をかけない(任意)

上記の条件を満たしたフォームの保存方法を考えています。
(TRPGのキャラクターシートのようなものです。)
どの保存方法が適切なのかと考えると……考えあぐねている状況です。

(CSVの書き出し、セッションストレージ、ウェブストレージは見ました。
データベース、Jsonはまだ良くわかっていません。)

PHP,Javascript,jqueryで実装できるもので、良い方法はないでしょうか?

かなり曖昧な質問内容ですが、ご回答頂けると幸いです。

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

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

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

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

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

kei344

2019/02/10 14:57

ご自身で調べた物を全て質問文に提示されては。このままでは見たことがあるものを提示される可能性が高いですよ。
guest

回答2

0

ベストアンサー

CSVの書き出し、セッションストレージ、ウェブストレージは見ました。

ちょいと調べ物の方向性が明後日の方向を向いているようですね。
確かに自力ではかなり大回りをしそうなので軌道修正を兼ねてアドバイスしていきます。


Webサーバとはなんぞやに関して、関係あるところをざっくりと説明していきます。

Webサーバとは、インターネット上に公開されているパソコンのTCP80番ポートを開けて、
全世界のクライアント(Chrome等のWebブラウザ)がこの80番ポートにHTTPリクエストを送信してきて、
Webサーバからデータ(HTML、CSS、JS、画像ファイルなどなど)の文字列を持って帰る仕組みを指します。

意識しておくべき事は、この「インターネット上にマシンが存在する」という事。

不特定多数に閲覧できる。

不特定多数に閲覧させる為には、Webサーバのマシン内にファイルを動的に作成して、
アクセスしてきたユーザに公開するという機能が必要になります。

なのでWebサーバのマシン内にファイルを作成。
それを一覧として見せる為にPHPやRuby、Node.js……などの何かしらのプログラミング言語を使ってリクエストに従ってファイルを探した結果が盛り込まれているHTML(動的HTML)を返すことになります。

セッションストレージ、ウェブストレージ

これらはChromeなどのブラウザを起動しているユーザのパソコン(もしくはスマホ等)の話ですね。
ここに記憶すると、他のユーザが閲覧することが出来ません。

結果としてWebサーバがその情報を吸い上げて保存する仕組みが必要になるので、
結局二度手間やん……という話になります。
何度も送信したくないキャッシュデータを保存するような使い方が主になります。

データベース

CSVファイルの読み書きで感づいたと思いますが、
Webサーバで普通にファイルの読み書きをすると以下の問題点が浮上します。

  • AさんとBさんが同時に同じCSVファイルを読み書きした場合の整合性
  • 全てのリクエストでCSVファイルを読み書きするので速度面でくっそ遅い

これらは色々とノウハウがあるのですが、
最初からMySQLなどのRDBMSを利用するのが一般的です。

  • 同時読み書き: 裏で賢い行単位のロックが動いている他、SQLクエリ順に処理するので確実に反映を届ける事が可能
  • 速度: 世界最高峰の速度で動作するC++で書かれており単純にくっそ速い、インデックスという仕組みが用意されており様々な視点でデータを高速に検索出来る

RDBMSは行列の2次元の表形式で構成されるデータベースで、
ファイル操作は「専用のSQL文字列を使って命令する」というやり方ですが、
その本質はExcelと殆ど同じものです。

  • データベース: Excelのファイル
  • テーブル: Excelのシート
  • カラム: Excelの縦列(1行目をタイトル名置き場とかよくやるよね)
  • レコード: Excelの行(1件のデータを表す)

フォームの保存方法を考えています

TRPGとありますが、その本質は掲示板やブログ、SNSと同じです。
そのデータで何をするかという所だけが異なるだけで、
その本質はxxの集合体ということでExcelでも管理出来るはずです。

画面上に表示する瞬間だけHTMLとCSSでキャラクターシートにすればいいでしょ?
それまでは効率の良い二次元の表で管理すればいい。

まずはPHPとデータベースのお勉強しながら掲示板やブログを作成してください。
これらが作れるほど成熟すれば自然と自分でどこをカスタマイズしてTRPG用のキャラクターシートにすれば良いかが理解出来ますし、掲示板やブログを作れないのなら何も作れません。

そのためには、書店へ行き、掲示板やブログを作るという趣旨の書籍を購入してそのとおりに手を動かしてみると良いでしょう。

投稿2019/02/11 04:00

編集2019/02/11 04:01
miyabi-sun

総合スコア21158

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

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

Suguru_KP

2019/02/11 04:14

非常に丁寧なご回答ありがとうございます。 勉強し始めたばかりで知識もなく、暗中模索状態だったので、 今回の回答はとても助かりました。 データベースの知識は皆無なので、回答者様の言う通り、まずは掲示板やブログを作ってみて、知識を深めたいと思います。 重ねてお礼を申し上げます。
guest

0

既にオリジナルはお亡くなりになってると思うけど

FF ADVENTURE

というもののことでしょうか?

コードも共有化されてたりしない等色々問題あったが。

超高負荷のため、レンタルサーバーでは、このCGI自体を明記して禁止にされてました。
最近だとCGIチャット等の等に含まれてますけどね

とりあえず、 FF ADVENTURE のカスタマイズ版ソースを読めばある程度は理解できると思います。
※ コードは共通化されてないので読みづらいかもしれないが・・・

投稿2019/02/11 04:44

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

Suguru_KP

2019/02/11 04:49

ご回答ありがとうございます。 勉強のため、参考に見てみたいと思います!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問