From 8daabba6a40154432669848bdaebf41b191bcf0a Mon Sep 17 00:00:00 2001 From: "Jehan-Guillaume (ioguix) de Rorthais" Date: Wed, 16 Oct 2013 12:09:51 +0200 Subject: [PATCH] Fix downloading result from very long user query We were still passing queries as GET parameters in links on the query result page, leading to bug when exporting, creating a view or creating a report. We now use the sessoin variable 'sqlquery' as anywhere else. --- dataexport.php | 5 ++++- display.php | 2 +- sql.php | 7 ++----- views.php | 6 +++++- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/dataexport.php b/dataexport.php index b8e3d0de..84db24f8 100644 --- a/dataexport.php +++ b/dataexport.php @@ -298,6 +298,9 @@ // Include application functions include_once('./libraries/lib.inc.php'); + if ( !isset($_REQUEST['query']) or empty($_REQUEST['query']) ) + $_REQUEST['query'] = $_SESSION['sqlquery']; + $misc->printHeader($lang['strexport']); $misc->printBody(); $misc->printTrail(isset($_REQUEST['subject']) ? $_REQUEST['subject'] : 'database'); @@ -337,6 +340,6 @@ echo "\n"; $misc->printFooter(); - } + } ?> diff --git a/display.php b/display.php index eccb64b1..4fed188f 100644 --- a/display.php +++ b/display.php @@ -746,7 +746,7 @@ ); } - $urlvars = array('query' => $_REQUEST['query']); + $urlvars = array(); if (isset($_REQUEST['search_path'])) $urlvars['search_path'] = $_REQUEST['search_path']; diff --git a/sql.php b/sql.php index 5a4bfe42..b2ad46de 100644 --- a/sql.php +++ b/sql.php @@ -235,8 +235,7 @@ 'href' => array ( 'url' => 'views.php', 'urlvars' => array_merge($fields, array ( - 'action' => 'create', - 'formDefinition' => $_SESSION['sqlquery'] + 'action' => 'create' )) ) ), @@ -251,9 +250,7 @@ 'attr'=> array ( 'href' => array ( 'url' => 'dataexport.php', - 'urlvars' => array_merge($fields, array( - 'query' => $_SESSION['sqlquery'] - )) + 'urlvars' => $fields ) ), 'content' => $lang['strdownload'] diff --git a/views.php b/views.php index bde35586..15afe46a 100644 --- a/views.php +++ b/views.php @@ -379,7 +379,11 @@ global $lang; if (!isset($_REQUEST['formView'])) $_REQUEST['formView'] = ''; - if (!isset($_REQUEST['formDefinition'])) $_REQUEST['formDefinition'] = 'SELECT '; + if (!isset($_REQUEST['formDefinition'])) { + if (isset($_SESSION['sqlquery'])) + $_REQUEST['formDefinition'] = $_SESSION['sqlquery']; + else $_REQUEST['formDefinition'] = 'SELECT '; + } if (!isset($_REQUEST['formComment'])) $_REQUEST['formComment'] = ''; $misc->printTrail('schema'); -- 2.39.5