我有一点问题,希望你能帮助我...在我的mysql表格中,我有一个名为size
的行:
“XS”=>“11”,“S”=>“22”,“M”=>“33”,“L”=>“44”
我想在数组中得到它,所以我可以将它发布到我的选择中。
$x = mysqli_query($mysql_link, "SELECT * FROM dagenshug_produkt WHERE varenummer = '$produktid'");
while($row = mysqli_fetch_assoc($x)) {
$sizearray = array($row['size']);
print_r($sizearray);
}
返回:
数组([0] =>“XS”=>“11”,“S”=>“22”,“M”=>“33”,“L”=>“44” )
但我想
数组(“XS”=>“11”,“S”=>“22”,“M”=>“33”,“L”=>“44”)
任何能帮助我一点的人?
答案 0 :(得分:0)
我发布这个作为答案,因为它将发表评论 我稍后会删除它,因为它不是你问题的真实答案。
您需要重新设计数据库。请阅读关系数据库设计。
一种(简单)可能性是每个尺寸有一个表格字段。 这种设计的缺点是,如果f.e.一个产品发明了一个名为XMS的新尺寸,你需要重写很多代码 这是关系表到位的地方。如果你有一个额外的桌子可以保存每个产品的所有尺寸,那你就没事了!
这样的尺寸表可能看起来像这样:
product_sizes
----------------
id // unique id of this entry (int, auto_incement)
label // 'XS', ...
size // '22',...
product_id // the id of the product it refers to
但所有这些想法都取决于我们不了解的要求。
答案 1 :(得分:0)
你问了一个错误的问题。如评论中所述,您需要重新设计数据库。
您不一定要开发通用的产品变体(颜色,尺寸,事项等)。
您的产品在桌子上,它们都有唯一的ID。好。在另一张表中,存储您的尺寸:
pivot 表,它实现了您的产品与尺寸之间的关系:
此表可能包含关系数据,如额外费用(有时大尺寸更广泛)等。
为了做得更好,您可以将关联尺寸< - > 产品类型与另一个表存储在一起。您的后台必须允许将某些尺寸应用于适当的产品。
反正。在phpMyAdmin中设计数据库不会。决不。有一些特定的工具,比如MySQL Workbench。它将帮助您全面了解数据库。
你还 需要 来了解表示实体的表和由于技术原因而存在的表之间的区别(对不起,我的词汇量有点受限)这个案例)。 pivot 表不是实体,即使它可以携带数据(例如:用户添加到组中的日期)。
了解这些基础知识非常重要,它们将帮助您构建强大,安全,高效和快速的数据库。
答案 2 :(得分:0)
我希望能帮到你......
$x = mysqli_query($mysql_link, "SELECT * FROM dagenshug_produkt WHERE varenummer = '$produktid'");
$row = mysqli_fetch_assoc($x);
$arr = explode(",",$row['size']);
$a=array();
foreach($arr as $n) {
$m = explode("=>",$n);
$a[$m[0]]= $m[1];
}
print_r($a);