什么是将数据数组保存到单个mysql字段的好方法?
同样,一旦我在mysql表中查询该数组,又有什么好方法可以将其恢复为数组形式?
是序列化和反序列化答案吗?
没有 好的 方法可以将数组存储到单个字段中。
您需要检查您的关系数据并对模式进行适当的更改。请参阅下面的示例以获取对此方法的参考。
如果 必须
将数组保存到单个字段中,则serialize()
and
unserialize()
函数可以解决问题。但是您不能对实际内容执行查询。
作为序列化功能的替代方法,还有 json_encode()
和json_decode()
。
考虑以下数组
$a = array(
1 => array(
'a' => 1,
'b' => 2,
'c' => 3
),
2 => array(
'a' => 1,
'b' => 2,
'c' => 3
),
);
要将其保存在数据库中,您需要创建一个这样的表
$c = mysql_connect($server, $username, $password);
mysql_select_db('test');
$r = mysql_query(
'DROP TABLE IF EXISTS test');
$r = mysql_query(
'CREATE TABLE test (
id INTEGER UNSIGNED NOT NULL,
a INTEGER UNSIGNED NOT NULL,
b INTEGER UNSIGNED NOT NULL,
c INTEGER UNSIGNED NOT NULL,
PRIMARY KEY (id)
)');
要使用记录,您可以执行诸如此类的查询(是的,请注意,请注意!)
function getTest() {
$ret = array();
$c = connect();
$query = 'SELECT * FROM test';
$r = mysql_query($query,$c);
while ($o = mysql_fetch_array($r,MYSQL_ASSOC)) {
$ret[array_shift($o)] = $o;
}
mysql_close($c);
return $ret;
}
function putTest($t) {
$c = connect();
foreach ($t as $k => $v) {
$query = "INSERT INTO test (id,".
implode(',',array_keys($v)).
") VALUES ($k,".
implode(',',$v).
")";
$r = mysql_query($query,$c);
}
mysql_close($c);
}
putTest($a);
$b = getTest();
该connect()
函数返回一个mysql连接资源
function connect() {
$c = mysql_connect($server, $username, $password);
mysql_select_db('test');
return $c;
}
我反复使用表单和保存页面将用户的答案保存到我的sql数据库中。最初,我将答案保存到一个数组中,一旦达到目标,我使用一个循环将数组的所有值传递到数据库,更新页面的代码如下所示: 这段代码运行得很好,但我需要立即保存所有答案,而不是在达到目标时保存。因此,我将代码更改为以下内容: 当问题出现时,新条目总是保存在新旧数据之间的同一位置。例如,如果在更改之前我保存了5个条目,它们在sql数组中的顺序如下:
本文向大家介绍php查询mysql数据库并将结果保存到数组的方法,包括了php查询mysql数据库并将结果保存到数组的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php查询mysql数据库并将结果保存到数组的方法。分享给大家供大家参考。具体分析如下: 这里主要用到了mysql_fetch_assoc函数 mysql_fetch_assoc语法如下: 范例代码如下: 希望本文所述对
问题内容: 我想保存额外的信息,然后再将总订单发送到Paypal。对于每一项,我都在MySQL数据库中创建了一个要存储的列。现在,我正在考虑将其保存为一个数组,以后可以在创建PHP页面时阅读。多余的字段取自输入表单字段。 通过使用数组,可以确保不混淆信息吗? 问题答案: 您可以使用/ 存储数组。使用该解决方案,它们不能轻易地从其他编程语言中使用,因此您可以考虑使用/ 代替(它为您提供了广泛支持的格
问题内容: 这是我的第一篇文章,因此,如果我错过任何内容,请耐心等待:)。 我使用GoJS的go- debug.js库在浏览器上绘制了一些图表,但我在保存选项上遇到了问题。该图产生一个JavaScript对象,您可以通过此命令 myDiagram.model.toJson() 将其转换为Json并将其传递给数据库。我想按保存按钮将使用 Ajax 方法的图表保存到 PhP ,然后保存到 mySQL
问题内容: 有没有一种方法可以将数组存储到mysql字段中?我正在创建一个评论评分系统,因此我想存储用户ID数组以防止进行多次投票。我将创建一个新表,其中包含评论ID和对此评论进行投票的用户ID数组。然后,我将加入评论表和该表,并检查当前用户ID是否存在于选民数组或注释中。如果是这样,将禁用投票图标。我想我会避免以这种方式在循环中使用mysql查询。 您碰巧知道更好的方法吗? 问题答案: 您始终可
问题内容: 我想使用新CKEditor 4(http://docs.ckeditor.com/#!/guide/dev_inline- section-2 )的“内联编辑” ,但是找不到如何使用PHP保存数据的任何示例/ MySQL。你能帮助我吗? 问题答案: 您需要一些AJAX魔术。通过页面内的JavaScript,您可以编辑HTML。然后,将其发送到服务器,PHP脚本将其获取并可以将其传递到M