12

Webページの訪問者からデータを収集し、作成したJavaScriptオブジェクトにデータを入れています。しかし、後で彼らが入力したデータを参照できるようにしたいと思います。

MySQLデータベースにアクセスできるので、このオブジェクトをそこに保存する方法はありますか?

別々の部分に分割するのではなく、オブジェクト形式で保持するようにしたいと思います。

4

5 に答える 5

16

オブジェクトのJSON.stringifiedバージョンをデータベースに保存JSON.parseし、オブジェクトを再度必要なときに保存します。次のようになります。

var myObj = {some: data, other: stuff};
var myObjString = JSON.stringify(myObj);
// store string in mySQL database here

// load string from database
var myJSONString = //mySQL database call
var myLoadedObj = JSON.parse(myJSONString);
于 2012-05-23T18:40:19.393 に答える
10

いいえ、できません。少なくとも現状のままではできません。

文字列にシリアル化できる場合があります。完全に配列、単純なオブジェクト、およびJSON形式でサポートされている他のデータ型で構成されている場合(ユーザー提供のデータの場合はおそらくこれで十分です(主な例外はバイナリファイルがアップロードされている場合))、そうするためのJSONシリアライザー。最新のブラウザーはこの目的のためにJSONオブジェクトを提供し、 json2.jsは古いブラウザー用にポリフィルします。次に、文字列をデータベースに保存できます。

ただし、それを別々の部分に分割しないと、リレーショナルデータベースを使用することの多くの利点(つまり、関係と有用な検索を実行する機能)が失われます。

于 2012-05-23T18:40:04.973 に答える
2

varchar または text データ型を使用して、JSON オブジェクトとしてフィールドに保存するだけです。

于 2012-05-23T18:39:47.813 に答える
0

JSONを見てみましょう。jQuery などを使用して、フォーム データをシリアル化し、サーバーに送信できます。また、単純な古いフォームを使用して、サーバー側で入力を処理することもできます。

于 2012-05-23T18:39:40.387 に答える