상품후기에 포토후기만 추출하려고합니다.
본문
상품후기작성시 에디터로만 사진업로드가 가능하게되있어서
에디터로 올린 이미지만 따로 추출하여 포토후기 란을 만들려고 하는데
아래와같이 작성해서 작업을 하면 에디터로 올린 이미지는 나오는데 에디터로 올린 이미지가 없을경우
공란으로 나와서 10개를 추출한다고 하면 그중에 10개중 이미지가 없는개 7개이면 실제로 3개만 추출되고 있습니다..
첨부파일이 있을경우 'and wr_file > 0' 이걸 추가하면 되는걸로 알고있는데 에디터로만 올린 이미지일 경우 잘안되네요
<div class="pic_lt">
<ul>
<?php
$sql = "select * from ".$g5[g5_shop_item_use_table]." where is_confirm = 1 and is_content ='".$row[imgs]."' order by is_id desc limit 40 ";
$result = sql_query($sql) or die(sql_error());
for($i=0 ; $row=sql_fetch_array($result); $i++)
{
$it_href = G5_SHOP_URL."/item.php?it_id=".$row['it_id']."";
$is_content = get_view_thumbnail(conv_content($row['is_content'], 1), 100, 100);
$content = get_itemuselist_thumbnail($row['it_id'], $row['is_content'], 100, 100);
$pattern = "/<img.*?src=[\"']?(?P<url>[^(http)].*?)[\"' >]/i";
preg_match($pattern,stripslashes(str_replace('&','&',$is_content)), $matches);
$imgs = substr($matches['url'],1);
?>
<li>
<img src="<?php echo $imgs; ?>">
<span class="lt_date">.</span>
</li>
<?php } ?>
<?php if (count($list) == 0) { //게시물이 없을 때 ?>
<?php } ?>
</ul>
</div>
답변 2
query 문에서 이미지 추출이 안되므로,
php로 이미지를 추출한 부분에서
if 문으로 이미지가 있음 경우에만 출력하면 될듯 하네요.
query 문에 limit 은 삭제하고,
추출한 수를 카운트해서 원하는 개수가 되면 break; 하면 됩니다.
<div class="pic_lt">
<ul>
<?php
$no=0;
$sql = "select * from ".$g5[g5_shop_item_use_table]." where is_confirm = 1 and is_content ='".$row[imgs]."' order by is_id desc limit 100 ";
$result = sql_query($sql) or die(sql_error());
for($i=0 ; $row=sql_fetch_array($result); $i++)
{
$it_href = G5_SHOP_URL."/item.php?it_id=".$row['it_id']."";
$is_content = get_view_thumbnail(conv_content($row['is_content'], 1), 100, 100);
$content = get_itemuselist_thumbnail($row['it_id'], $row['is_content'], 100, 100);
$pattern = "/<img.*?src=[\"']?(?P<url>[^(http)].*?)[\"' >]/i";
preg_match($pattern,stripslashes(str_replace('&','&',$is_content)), $matches);
$imgs = substr($matches['url'],1);
if($imgs) {
$no++;
?>
<li>
<img src="<?php echo $imgs; ?>">
<span class="lt_date">.</span>
</li>
<?php
if($no==40) break;
}
?>
<?php } ?>
<?php if (count($list) == 0) { //게시물이 없을 때 ?>
<?php } ?>
</ul>
</div>