Php 从mysql传输到ms excel
我试图将我的数据从mysql传输到ms excel,但我使用php得到了重复的值Php 从mysql传输到ms excel,php,mysql,excel,Php,Mysql,Excel,我试图将我的数据从mysql传输到ms excel,但我使用php得到了重复的值 <?php $form=''; $link = odbc_connect ('Ayush', '', ''); if (!$link) { die('Could not connect: ' . odbc_error()); } echo 'Connected successfully .<br>'; //create query to select
<?php
$form='';
$link = odbc_connect ('Ayush', '', '');
if (!$link)
{
die('Could not connect: ' . odbc_error());
}
echo 'Connected successfully .<br>';
//create query to select as data from your table
$sql= "SELECT * FROM adel";
$result = odbc_exec($link,$sql);
$sep = "\t"; //tabbed character
$fp = fopen('database.xls', "w");
$schema_insert = "";
$schema_insert_rows = "";
for ($i = 1; $i < (odbc_num_fields($result))+1; $i++)
{
$schema_insert_rows.=odbc_field_name($result,$i) . "\t";
}
$schema_insert_rows.="\n";
echo $schema_insert_rows;
fwrite($fp, $schema_insert_rows);
//start while loop to get data
while($row = odbc_fetch_array($result))
{
foreach($row as $value)
{
//set_time_limit(60); //
/*$schema_insert = "";
for($j=1; $j<odbc_num_fields($result);$j++)
{
if(!isset($row[$j]))
$schema_insert .= "NULL".$sep;
elseif ($row[$j] != "") */
$schema_insert.= strip_tags("$value").$sep;
$schema_insert .= "";
}
//$schema_insert = str_replace($sep."$", "", $schema_insert);
//this corrects output in excel when table fields contain \n or \r
//these two characters are now replaced with a space
//$schema_insert = preg_replace("/\r\n|\n\r|\n|\r/", " ", $schema_insert);
$schema_insert .= "\n";
//$schema_insert = (trim($schema_insert));
//print $schema_insert .= "\n";
print "\n";
fwrite($fp, $schema_insert);
}
fclose($fp);
odbc_close($link);
?>
下面给出了输出
我不想要任何不明确的价值观
有人能帮我吗非常感谢
Thankx您可以将DISTINCT或GROUP BY添加到查询中。例如:
SELECT DISTINCT FirstName,LastName FROM adel
您没有在获取记录的循环顶部重新初始化$schema_insert,因此您的输出将是:
row1
row1
row2
row1
row2
row3
row1
row2
row3
row4
row1
...
尝试:
顺便说一句,带有“$schema_insert.=”“;”的行他什么也没做
row1
row1
row2
row1
row2
row3
row1
row2
row3
row4
row1
...
while($row = odbc_fetch_array($result))
{
$schema_insert='';
...