0

我有以下代码片段,除了文件导出的那部分是硬编码的之外,它的效果很好。我已经接近了,但不知道如何实现以下目标::

  1. 省略在导出中显示为列的 PictureCount 字段

  2. 而不是硬编码 _1.jpg,我需要使用 PictureCount 值根据每个记录的此计数生成新记录(例如:.$jpg_name."_.$Picture_Count.jpg

这是我工作的代码:

$values = mysql_query("SELECT PictureCount, ListingRid AS Home_ID FROM ".$table." WHERE (COUNTY='ACME' OR COUNTY="TEST")");
$row = 0;
while ($rowr = mysql_fetch_assoc($values)) 
{
  if ($row == 0)
  $row++;

      $csv_output .= "company_id|";
  foreach($rowr as $name => $value)
  {
      if($name=='Home_ID') {$jpg_name=$value;}
      $csv_output .= $value."|";
  }
  {
      $csv_output .= "http://www.acmerealestate.com/feeds/fmfl/rets_images/".$jpg_name."_1.jpg ";
  }    
      $csv_output .= "\n";    
}
4

1 回答 1

0

在这种情况下,您需要更改 SQL 中的列。首先你需要添加Home_ID,然后PicCount

列表中的所有图像您可以从 1 循环到PictureCount并将图像添加到列表中。

<?php
$values = mysql_query("SELECT ListingRid AS Home_ID, PictureCount FROM ".$table." WHERE (COUNTY='ACME' OR COUNTY="TEST")");
$row = 0;
while ($rowr = mysql_fetch_assoc($values))
{
    if ($row == 0)
        $row++;

    $csv_output .= "company_id|";
    foreach($rowr as $name => $value)
    {
        if($name=='Home_ID') {$jpg_name=$value;}
        $csv_output .= $value."|";
        if ($name == 'PictureCount') {
        for ($i = 1; $i <= $value; $i ++)
            $csv_output .="http://www.acmerealestate.com/feeds/fmfl/rets_images/".$jpg_name."_".$i.".jpg|";
        }
    }
    $csv_output .= "\n";
}
于 2013-10-08T11:55:54.330 回答