我有以下代码片段,除了文件导出的部分是硬编码的以外,它们的工作原理非常好。我已经很接近了,但是还不知道如何实现以下目标:
忽略将PictureCount字段显示为
出口
而不是对_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";
}
最佳答案
在这种情况下,您需要更改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";
}
关于php - 基于MySQL查询导出具有动态值的CSV,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19243809/