2015-04-03 2 views
0

Я не эксперт по php, но я застрял здесь. Я три следующих .php файловphp post и перенаправить страницу одновременно

  1. < index.php - выпадающий список, который выберите DB таблицу.

  2. query.php < - it craft json query.

  3. chart.php < - это высокопроизводительная страница JQuery. которые используют функцию $.getJSON("query.php", function(json) { для извлечения данных из файла query.php.

index.php получит пользовательский ввод из выпадающего списка выберите DB/таблицу и передать его query.php и установить SELECT * FROM $table переменные.

Но я хочу сделать POST и в то же время он откроет страницу chart.php, чтобы я мог перенаправить перенаправление на страницу диаграммы. Как я отправляю POST и Redirect одновременно, поэтому query.php получить переменную $ table и мгновенно chart.php открыть график.

EDIT:

Если я положил все мои query.php кода chart.php тогда как я положил эти ценности JSon в $.getJSON()?

$.getJSON("query.php", function(json) { 
       options.xAxis.categories = json[0]['data']; 
       options.series[0] = json[1]; 
       options.series[1] = json[2]; 
       options.series[2] = json[3]; 
       chart = new Highcharts.Chart(options); 
      }); 

как $.getJSON() получит значение от переменной?

+0

Вы можете попробовать его с 'success' даже каждого действия в самом jquery? –

+0

Вы можете либо изменить свой код, чтобы сохранить опубликованное значение в значение '$ _SESSION', либо отправить форму/значение непосредственно в' chart.php' и добавить его как параметр в свой '$ .getJSON()' – Sean

+0

@Sean - Мне нравится вторая идея, но как я могу вывести выходные значения 'json' в' $ .getJSON() 'функцию? см. я отредактировал мой вопрос – Satish

ответ

1

1) от index.php -> сделать запрос POST для chart.php с необходимыми параметрами

2) с помощью $ _POST на chart.php => получать данные от index.php и показать на шаблоне, как:

для запроса GET для query.php

$.getJSON("query.php?<?='param1='.$_POST['param1']?>", function(json) { 
       options.xAxis.categories = json[0]['data']; 
       options.series[0] = json[1]; 
       options.series[1] = json[2]; 
       options.series[2] = json[3]; 
       chart = new Highcharts.Chart(options); 
      }); 

или с помощью обычного запроса $ .ajax отправить по запросу POST:

$.ajax({ 
     url: 'query.php', 
     data: "<?='param1='.$_POST['param1']?>" 
     dataType : "json", 
     method:"POST", 
     success: function(json){ 
       options.xAxis.categories = json[0]['data']; 
       options.series[0] = json[1]; 
       options.series[1] = json[2]; 
       options.series[2] = json[3]; 
       chart = new Highcharts.Chart(options); 
}); 

UPDATE

Если ваш сервер не short_open_tag = On - использовать <?php echo 'param1='.$_POST['param1'] ?>

И проверить Params, прежде чем давать их на шаблоне

+0

в' query.php' Я пытаюсь вставить '$ _GET [param1]' в запрос 'SQL', но это не сработало, я делаю это правильно? '$ query = mysql_query (" SELECT DATE_FORMAT (AcctStartTime, '% d% b') AS Days, SUM (SipResponseCode LIKE '2%') AS '2xx', SUM (SipResponseCode LIKE '4%') AS '4xx', SUM (SipResponseCode LIKE '5%') AS '5xx' FROM '". $ _GET [" param1 "]."' GROUP BY DATE (AcctStartTime); ") или die (" Dadasdad ");' – Satish

+0

Nevermind, я рисую как передать переменную запросу 'sql', спасибо – Satish