减少显示数据库PHP MySQL的图像数量

时间:2011-12-01 15:30:09

标签: php mysql html database image

让我们开始;

 echo $query_row['winkels'];

这将回响;

<td style="margin-left:3px;"><img src="logo/15.png"/></td> <td style="margin-left:3px;"><img src="logo/11.png"/></td> 

从我的MySql数据库中删除,但在页面上它将回显一个图像。如果我把更多的东西放在例子中;

<td style="margin-left:3px;"><img src="logo/15.png"/></td> <td style="margin-left:3px;"><img src="logo/11.png"/></td> <td style="margin-left:3px;"><img src="logo/15.png"/></td> <td style="margin-left:3px;"><img src="logo/11.png"/></td> 

它将回显2张图片。

当我显示超过20张图像时,我想将其缩小为5张图像。

我该怎么做?

例如;

$winkels_inject = $query_row['winkels'];
$sub_winkels = substr($winkels_inject, 0, 191);
echo $sub_winkels;

这在尝试减少文本时非常完美,但这就是我使用它时的功能。它减少了图像链接并删除了html,因此不会显示图像。因此,根本不会显示任何图像。

如何解决这个问题?

此致 F4LLCON

1 个答案:

答案 0 :(得分:1)

您似乎遇到了设计问题,您需要在数据库中存储的唯一内容是数字,然后是不同行中的每个数字。

无论如何,这是一个快速而又非常糟糕的解决方案:

$string_with_breaks = str_replace('td> <td', 'td>__break_here__<td', $query_row['winkels']);
$img_array = explode('__break_here__', $string_with_breaks);

// loop through array and only echo the first 5 elements
$count = 0;
foreach($img_array as $store)
{
  echo $store;
  $count++;
  if ($count > 4)
  {
     break;
  }
}

错过(或添加...)td标签之间的空格,它将不再有效......