当前位置: 首页 > 面试题库 >

将数组保存在mysql数据库中

夏知
2023-03-14
问题内容

我想保存额外的信息,然后再将总订单发送到Paypal。对于每一项,我都在MySQL数据库中创建了一个要存储的列。现在,我正在考虑将其保存为一个数组,以后可以在创建PHP页面时阅读。多余的字段取自输入表单字段。

通过使用数组,可以确保不混淆信息吗?


问题答案:

您可以使用serialize/
存储数组unserialize。使用该解决方案,它们不能轻易地从其他编程语言中使用,因此您可以考虑使用json_encode/
json_decode代替(它为您提供了广泛支持的格式)。 避免
为此使用implode/ explode,因为您可能最终会遇到错误或安全漏洞。


请注意,这会使您的表不规范化,这可能是个坏主意,因为您无法轻松查询数据。因此,在继续操作之前,请仔细考虑这一点。您是否可能需要查询数据以获取统计信息?还有其他原因使数据标准化吗?

另外,不要保存原始$_POST数组。有人可以轻松地制作自己的Web表单并将数据发布到您的站点,从而发送占用大量空间的非常大的表单。保存所需的那些字段,并确保在保存之前验证数据(这样您就不会得到无效的值)。



 类似资料:
  • 问题内容: 我的客户在php + mysql中创建了一个脚本,该脚本将图像直接保存在数据库中,并且每个图像都有这样的url:www.example.com/image.php?id=421 您认为这是一个非常错误的解决方案?我应该重建所有站点吗? 每天大约有1000次访问,数据库中大约有600张图像。 问题答案: 图像文件是文件,除非有充分的理由将它们存储在数据库中,否则它们应属于文件系统,在文件

  • 问题内容: 我正在尝试将法语口音保存在数据库中,但并没有像在数据库中那样保存它们。 例如,“é”另存为“é”。 我尝试将文件设置为“ Unicode(utf-8)”,数据库中的字段为“ utf8_general_ci”,以及数据库本身。 当我查看通过Firebug通过AJAX发布的数据时,我看到的重音为“é”,因此是正确的。 谢谢,让我知道您需要更多信息! 问题答案: 我个人通过在 MySQL连

  • 问题内容: 我正在开发一个PHP应用程序,该程序需要将各种设置存储在数据库中。客户经常询问是否可以添加或更改/删除某些内容,这已导致表格设计出现问题。基本上,我有很多布尔字段,它们仅指示是否为特定记录启用了各种设置。 为了避免使表格混乱,我考虑将数据存储为序列化数组。我已经读过,这被认为是不好的做法,但是我认为这是使用这种方法的合理案例。 有什么真正的理由避免这样做吗? 任何建议表示赞赏。 谢谢。

  • 问题内容: 我已经更改了表和列的字符集,我得到的阿拉伯文本为???? MYSQL数据库中的标记 这是桌子的设计 当我再次触发选择查询时,它显示???? 作为文字? 谁能告诉我我在哪里做错了? 问题答案: 手动将阿拉伯数据插入您的Phpmyadmin。 首先,您检查数据库,表和列名称是否设置为utf8。如果未将这些设置为utf8,则首先进行设置,然后可以将阿拉伯数据插入到db表中。 对于数据库: 对

  • 问题内容: 什么是将数据数组保存到单个mysql字段的好方法? 同样,一旦我在mysql表中查询该数组,又有什么好方法可以将其恢复为数组形式? 是序列化和反序列化答案吗? 问题答案: 没有 好的 方法可以将数组存储到单个字段中。 您需要检查您的关系数据并对模式进行适当的更改。请参阅下面的示例以获取对此方法的参考。 如果 必须 将数组保存到单个字段中,则and 函数可以解决问题。但是您不能对实际内容

  • 我有问题保存我的数组列表。当应用程序销毁或更改意图或更改方向时,我想保存我的数组列表: 首先,我尝试保存在文件中,但Paint类不是可序列化类。第二,我尝试使用onSaveInstanceState(Bundle outState)/onRestoreInstanceState(Bundle savedInstanceState),但我无法保存Arraylist;第三,我尝试使用数据库,但没有任何