PHP:MYSQL行到数组
我有点小问题,希望你能帮我。。。在我的mysql表中名为PHP:MYSQL行到数组,php,mysql,arrays,mysqli,Php,Mysql,Arrays,Mysqli,我有点小问题,希望你能帮我。。。在我的mysql表中名为size的行中,我有: “X”=>“11”、“S”=>“22”、“M”=>“33”、“L”=>“44” 我想把它放在一个数组中,这样我就可以把它发布到我的select $x = mysqli_query($mysql_link, "SELECT * FROM dagenshug_produkt WHERE varenummer = '$produktid'"); while($row = mysqli_fetch_assoc($x)) {
size
的行中,我有:
“X”=>“11”、“S”=>“22”、“M”=>“33”、“L”=>“44”
我想把它放在一个数组中,这样我就可以把它发布到我的select
$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”)
谁能帮我一点忙
我将此作为答案发布,因为这将是龙的评论。
我稍后会删除它,因为它不是你问题的真正答案 你需要重新设计你的数据库。请阅读关系数据库设计 一种(简单的)可能性是每个大小有一个表字段。 这种设计的缺点是,如果f.e.一种产品发明了一种称为XMS的新尺寸,那么你就是f*了,需要重写大量代码。
这就是关系表出现的地方。如果您有一个额外的表,可以保存每个产品的所有尺寸,您就可以了 这样的尺寸表可以如下所示:
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
但是,所有这些想法都取决于您的要求,我们不知道。您问错了问题。正如评论中提到的,您需要重新设计数据库 您不必开发通用的产品变体(颜色、尺寸、材质等) 你的产品在一张桌子上,它们都有一个唯一的ID。很好。在另一个表中,存储您的尺寸:
- id:整数自动递增(PK)
- 尺码名称:2XS、XS、L、M、L、XL、XXL、3XL
- 尺寸描述(用于后台办公室的信息用途)
- 产品类型(或产品类别)。请记住,XL是衬衫尺码,而10是鞋码
- 产品标识
- 尺码
$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);
欢迎来到StackOverflow!请提供有关数据库架构的更多信息(例如
DESC dagensshug\u produkt;
的结果)。你的数据似乎没有按照你想做的事情以适当的方式存储。我不能相信你发布的回报是你实际得到的回报。缺少括号和/或逗号。@Jeff比“他死了Jim,死了Jim”更糟糕的是,表中每个大小有一个字段,而不是试图将字符串解析数组保存到一个字段中。如果你不能做到这一点,请保存一个json并解析它。再次,这是一个:你问如何获取数据,而实际的问题是如何存储数据。这是多对多关系:一个产品可以有一个或多个大小,每个大小可以应用于一个或多个产品。。。应该有3个表来链接两个实体:产品
、尺寸
和关系表产品_尺寸
我希望每个产品都有自己的尺寸集。就像意大利语的“小”和美国的“小”完全不同。但我们不知道马克的数据会是什么样子。我们给他指明了我猜的方向。感谢您提到MYSQL workbench-我搜索这样一个(免费)工具已经很久了,没有一个是我真正喜欢的,现在尝试这个!我从未见过任何电子商务软件这样做。产品变化不是电子商务软件要实现的简单功能。它需要很多表(比我们给出的示例中的3个表多得多)。正如我所说,轮子已经被发明了。为了做到完美,商店应该能够根据买方国家显示合适的尺码(欧盟鞋码与英国或美国不同,而美国的XL码t恤在欧盟也不能是L码:尺码写在标签上,句号)。但这样一个特性的实现将更加复杂,可能需要更多的表。