首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自数据库数组的字符串。

来自数据库数组的字符串。
EN

Stack Overflow用户
提问于 2014-09-18 18:19:27
回答 2查看 33关注 0票数 0

好的,首先,我在www中搜索这个问题,我发现了一些与数组有关的问题,但不是我的问题。

好的,所以你可能知道,贝宝只允许一个自定义变量是$POST,但我需要收集产品id和购买物品的数量。为了做到这一点,我把我的自定义变量变成了一些东西,可以得到这样的帖子:(25-1,12-3,13-4) --这意味着,用户购买了3个项目(用逗号分隔),其中第一个数字是产品id (然后分隔符'-‘进来),第二个是数量。(所以它们都在一排一列)

现在我的问题是从数据库中显示它。我需要获得产品名称和详细信息,这就是为什么我需要将数字作为字符串从每个数组中分离出来,并从数据库中获取数据以获取产品的信息。(我现在使用的是php的旧版本,我猜是5.2。)现在的问题是:

1.)它返回单词“Array”(字面意思),因此它会说得像ArrayArrayArray

2.)我如何爆炸/分离这些数据,以便我可以得到它,因为我需要产品ID来获取一些其他数据.我试着把它炸成数组,然后再爆炸一次,但是不起作用(很可能我的代码出错了?)

这是我的代码:(我已经连接到数据库了)

代码语言:javascript
复制
$data = mysql_query("SELECT * from transactions") or die(mysql_error()); 
/* My table tag and headers goes here */
while($info = mysql_fetch_array( $data )) {
    echo "<tr>";
    echo '<td>' . $info['id'] . '</td>';
    echo "<td>";
    $array = $info['product_id_array'];
    $explode_array = explode(",", $array);
    foreach($explode_array as $explode_more){
        $explode_more = explode("-", $explode_array);
        $prod_id = $explode_more[0];
        $quantity = $explode_more[1];
        print_r($prod_id); //should echo the 25 in the array (25-1), right?
        print_r($quantity);
    }

    echo"</td>";
    echo"<tr>";
}

如果贝宝允许多个自定义变量T_T,谢谢各位。如果我不能很好地表达我的问题,或者我的语言不好,因为英语不是我的第一语言,请原谅我:),好日子!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-18 18:31:26

你的变量名被混淆了。在foreach-循环中,您应该这样做。

代码语言:javascript
复制
foreach($explode_array as $explode_more){
    $explode_even_more = explode("-", $explode_more);
    $prod_id = $explode_even_more[0];
    $quantity = $explode_even_more[1];
    print_r($prod_id); //should echo the 25 in the array (25-1), right?
    print_r($quantity);
}

注意,$explode_more在循环中使用,$explore_array保持原样。

票数 0
EN

Stack Overflow用户

发布于 2014-09-18 18:56:54

将其分隔到多个表中,不要将非原子值存储在1列中。当然不是当他们和另一张桌子有关系的时候。

假设您想知道某一产品在某一时期的销售情况。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25919701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档