我应该选择使用PHP保存javascript代码的mysql中的哪种数据类型?

时间:2013-05-28 04:50:41

标签: php javascript mysql jsfiddle

我制作了一个类似于jsfiddle的网站,用户可以保存他们的javascript代码并将其缩回。我不知道我应该使用哪种数据类型来保存代码,或者我是否应该将它们保存在文本文件中。另外,当使用php打印数据时,如何缩进呢?

4 个答案:

答案 0 :(得分:0)

您最好将其保存在具有随机选择名称的文本文件中,并将名称保存到数据库中,或使用保存的ID作为名称。当然,如果你删除数据库中的一行,你也必须删除该文件。

如果您只想将它​​们保存在数据库中,请选择TEXT或BLOB。 VARCHAR对大文本不好,如果你不知道长度。

如果您显示/使用从用户上传的内容,则必须谨慎照顾尝试exploit stuff的人。

关于缩进,如果您在textarea中显示它们,则不应该有任何问题。

答案 1 :(得分:0)

您可以将数据存储在varchar中,但您可能会寻求其他存储可能性,例如将它们存储在单独的* .js文件中。对于缩进,包括缩进字符在内的所有字符都将与js一起保存。

答案 2 :(得分:0)

我会使用BLOB检索比从数据库中获取文件名然后获取文件更快。此外,如果您的网站设置正确,则可能性很小,但如果您运行node.js或其他内容,则可以在服务器上执行javascript文件,将其打开以防漏洞。

答案 3 :(得分:0)

您应该使用LONGTEXT类型。如果您可以保证您的数据少于8KB,则可以使用VARCHARTEXT类型(Relevant MySQL documentation)。

如果文本可能包含某些二进制数据,则可能需要使用BLOBLONGBLOB类型。

关于缩进:您可以在字段中存储制表符或空格以及换行符,并基本将它们视为普通文本文件。