【发布时间】:2016-12-12 06:06:19
【问题描述】:
我在基于 MySQL 的 CMS 中有一个表,其中一个字段包含 CMS 网页中显示的文章文本。
有些文章包含嵌入在文本中的图像,以 HTML 'img' 标签的形式。字段中包含的文本中可能有一张或多张图片。
我想做的是创建一个查询,该查询将提取所有文章中所有图像的列表。我设法创建了一些代码如下:
SELECT nid,
substr(body,locate('<img', body),(locate('>',body,locate('<img', body)) - locate('<img', body))) as image,
body FROM `node_revisions` where body like '%<img%'
这似乎工作正常,但是当然它只提取第一个图像,我真的很想提取所有图像(事实上,这通常意味着使用循环,但这在 MySQL 中似乎不可能)。
仅供参考,有问题的 CMS 是 Drupal 6,因此是字段和表的名称。然而,这确实是一个关于 MySQL 而不是 Drupal 的问题,这就是为什么我在这里而不是在 Drupal Stackexchange 网站上问的原因。
【问题讨论】:
-
我建议使用 PHP 而不是 MySQL。 This answer 可能会提供信息。这是another article。
标签: php html mysql parsing drupal-6