2012-02-27 94 views
0

我有一個MSSQL數據庫表,我正在訪問一個PHP頁面。我使用SELECT ALL WHERE查詢在頁面上顯示某些行。現在我需要一個按鈕將SELECT ALL WHERE查詢導出到.csv文件。我需要一點幫助開始這個。將MSSQL表信息導出到csv文件?

我有一個函數來創建可以創建頁面的頁面導出:

public function SelectAllWhereFetch($table, $where, $extra = "", $columns = "*") { 
$tsql = "SELECT $columns FROM " . $table . " WHERE " . $where . $extra; 
     $stmt = $this->ExecuteDontFreeQuery($tsql); 

     $result = mssql_query($query); 

     // Checking for and creating table names 
      $i = 0; 
      echo '<html><body><table><tr>'; 
      while ($i < mssql_num_fields($result)) 
       { 
      $meta = mssql_fetch_field($result, $i); 
      echo '<td>' . $meta->name . '</td>'; 
      $i = $i + 1; 
       } 
     echo '</tr>'; 

     // Returning all rows in table 
     while (($row = mssql_fetch_row($result))) 
      { 
      $count = count($row); 
      $y = 0; 
      echo '<tr>'; 
      while ($y < $count) 
        { 
       $c_row = current($row); 
       echo '<td>' . $c_row . '</td>'; 
       next($row); 
       $y = $y + 1; 
        } 
      echo '</tr>'; 
       } 
      mssql_free_result($result); 

      echo '</table></body></html>'; 

    } 

這裏的「如果」的按鈕操作語句:

if($_REQUEST['exporting']) { 

$vastreamline = $dataConnection->SelectAllWhereFetch("applicants", 
"loan_purpose='VA Streamline' AND statusdate >= '1/1/2011'", 
"ORDER BY statusdate DESC"); 

     header("Content-type: text/x-csv"); 
     header("Content-Disposition: attachment; filename=streamline.csv"); 
     echo $vastreamline; 
} 

這裏的按鈕操作:

<div class="span3"> 
     <input type="hidden" name="exporting" value="true"> 
     <input type="submit" class="btn primary" value="Export CSV"> 
</div> 

我似乎正在連接到MSSQL數據庫,因爲我可以顯示信息息。我只是無法弄清楚獲取按鈕導出csv文件的語法。

回答

1

由於您的按鈕是不是一個形式裏面,嘗試:

<form action="yourexportpage.php" method="POST"> 
    <div class="span3"> 
     <input type="hidden" name="exporting" value="true"> 
     <input type="submit" class="btn primary" value="Export CSV"> 
    </div> 
</form> 

而且改變你的PHP導出到:

if($_REQUEST['exporting']) { 

    header("Content-type: text/x-csv"); 
    header("Content-Disposition: attachment; filename=streamline.csv"); 

    $dataConnection->SelectAllWhereFetch("applicants", 
    "loan_purpose='VA Streamline' AND statusdate >= '1/1/2011'", 
    "ORDER BY statusdate DESC"); 
} 
+0

添加標籤,從沒有給我的按鈕功能。它將我發佈的當前HTML頁面導出爲.csv文件。不過,我只想從我的查詢中獲取表格信息。 – 2012-02-27 21:24:06

+1

@ post.72嘗試修改你的PHP導出頁面到修改後的代碼。 – enderskill 2012-02-27 21:32:09