2

私は小さなPHP/Javascriptマップアプリケーションに取り組んでいます。これは基本的に、MySQLデータベーステーブルから一連の場所の名前と座標点を取得し、それらをHTMLキャンバスに追加するだけです。進行中のコラボストーリーでキャラクターが訪れた場所を表すことになっているので、いつでもマップ上でキャラクターの位置を取得して、別のアイコンで表示できるようにしたいと思います。

最も明白な解決策(マップの場所と同様に、キャラクターには名前と座標があるため)は、場所のテーブルにもキャラクターを独自の行として含め、マップコードに固有の情報を認識させてそれらを異なって表示します。しかし、キャラクター自体は場所ではないため、「場所」テーブルに保存するのは奇妙に思えます。ただし、この1行だけで、まったく新しいテーブル「文字」を作成するのはやり過ぎのようです。

したがって、私のより一般的な質問は、PHP / MySQLがこのような一意のデータを処理するための良い方法であると思います。これは、既存のテーブルに関連していますが、十分に密接ではありません。このデータをテキストファイルに保存し、PHPで更新しますか?

4

2 に答える 2

1

単一の行のみを持つことを目的としたテーブルを持つことについて、特に「奇妙な」ことは何もありません。実際、一部のデータにデータベースを使用し、他のデータにテキストファイルを使用するのは、おそらくもう少し奇妙なことです。

テーブルがあると、何らかの理由でその情報が必要になった場合に、時間の経過とともにキャラクターの位置を追跡する可能性もあります。(それを追跡し、それを使用しない方が、それを必要とし、それを追跡していないよりも良いです。)

文字の位置がその場で計算され、永続化する必要がない場合は、データベースからの結果にプログラムで追加するだけで、データベースとビューの両方に対して完全に透過的になります。しかし、それを永続化する必要がある場合は、おそらくテーブルが最適です。

于 2012-09-08T22:43:08.280 に答える
0

文字の位置用に別のテーブルが必要です。。。時間とともに。次のような列があります。

  • 文字ID
  • 位置
  • 日付/タイムスタンプ

最終的には、時間の経過とともに場所を表示できる複数のキャラクターが必要になる場合があります。文字以外の文字が含まれている可能性があります。この場合、テーブルの名前を変更する必要があります。

場所とキャラクターの位置には大きな違いがあります。場所は、少なくとも一度定義されると静的です。キャラクターの位置は時間に依存します。それらは別個のエンティティであり、独自のテーブルを持つことによって最もよく提供されます。

于 2012-09-08T22:41:12.860 に答える