2017-01-19 7 views
1

У меня есть более раннее PHP-приложение, которое я пытаюсь выяснить, почему я больше не могу экспортировать в CSV.PHP: Экспорт данных sql в CSV

На странице, где отображается SQL данные на странице по следующей ссылке отображается для экспорта в CSV:

<p class="content_text"><strong><a href="export.php?tablename=PrivateActs109">Export to Excel</a></strong></p> 

А затем Целостности файла export.php:

<?php /* ########## Connect to Database ########## */ 

require_once('../Connections/dbConnect_acts.php'); 
mysql_select_db($database_dbConnect, $dbConnect) or die ("no luck") ; 



// Export to CSV 
require '../includes/exportcsv.inc.php'; 
$table=$tablename; // this is the tablename that you want to export to csv from mysql. 
$sql_query = "SELECT `ChapterNumber`, `Subject`, `Abstract` , `BillNumber` FROM $tablename "; 
exportMysqlToCsv($table,$sql_query); 
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");header("Content-Length: " . strlen($out)); 
// Output to browser with appropriate mime type, you choose ;) 
//header("Content-type: text/x-csv"); 
//header("Content-type: text/csv"); 
header("Content-type: application/csv"); 
header("Content-Disposition: attachment; filename=$filename"); 

?> 

Поиск потому что я до сих пор довольно новичок в PHP.

+1

'$ table = $ tablename' должен быть' $ table = $ _ GET ['tablename'] 'потому что' register_globals_gpc' выключен, но это открывает всю новую банку червей SQL Injection, потому что она используется в запрос. http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php?rq=1 – AbraCadaver

+0

@AbraCadaver Спасибо, просто попав в это приложение. CSV создается, но я не получаю то, что ожидаю. – Jason

+0

Что делает строка 'require '../ includes/exportcsv.inc.php';' include? и что делает строка 'exportMysqlToCsv ($ table, $ sql_query),' do? Мы не можем видеть их, поэтому мы не знаем, что происходит. – Mike

ответ

0

я завелся того, чтобы изменить $ таблицу на следующее:

$table=$_GET['tablename']; 

Спасибо за предложения, это наследие приложение, и я много о PHP узнал от работы на нем.