2011-06-10 125 views
1

我有一个javascript应用程序,它将跟踪x'& y坐标的'画布上的几个对象。我打算在二维阵列中存储这些数据,例如:如何在mysql数据库中存储多维javascript数组

new Array(
    new Array(id0, x0, y0), 
    new Array(id1, x1, y1), 
    new Array(id2, x2, y2)); 

我想这个数据提交到一个PHP脚本,并将其存储在MySQL数据库中,供以后检索/重新显示。什么是这样做的好方法?我应该序列化数组并对其进行编码以进行传输吗?我正在使用jQuery,所以如果有人知道这个框架中包含的任何好功能都会很棒。谢谢!

+2

JSON来拯救! – Wiseguy 2011-06-10 13:54:43

回答

2

将您的数组序列化为可存储格式(通常是字符串),将其发送到将其存储到数据库的服务器。

您可能使用JSON,XML或任何其他格式。我会选择JSON,因为它不那么冗长,然后在数据库中使用更少的空间。

但请注意,序列化数组阻止使用数据库引擎进行任何查询。您必须提取数据,将其反序列化,检查它是否是您需要的数据,然后冲洗并重复,直到找到合适的阵列(除非您知道要查找的阵列的ID)

注意:不要忘记使用POST请求将其发送到服务器,因为GET请求具有长度限制。

2

最好的主意似乎是JSON

只需encode your array in JSON,发送到服务器。如果你不需要在服务器端操作数据,你甚至可以将JSON本身保存到MySQL中。否则,所有广泛传播的服务器端语言都具有JSON处理功能(json_decode()和PHP中的朋友)。

在返回的路线上(从服务器到Javascript),JSON再次是最简单的方法。你可以使用jQuery的getJSON()parseJSON()函数来处理它,并获得你的数组。

相关问题