2017-07-11 6 views
0

私はロード時にクエリ結果を表示するページを持っています。日付範囲セレクタもあります。これを選択すると、同じクエリを実行して更新された結果を表示する必要があります。 ページが完全に読み込まれますが、日付範囲を選択してボタンをクリックしても何も起こりません。ここにページのコードとイメージがあります。私はPHPとhtmlの初心者で、Webアプリケーションを構築することで学びます。だから私の質問が非常に基本的で馬鹿だと言い張りなさい。 Screenshot of Pageボタンクリックで新しいクエリ結果を表示

<html> 
 
    
 
    <body> 
 
\t \t <div class="container"> 
 
\t \t \t <h1>Welcome <?php echo $login_session; ?></h1><br></br> 
 
\t \t \t <div class="row"> 
 
\t \t \t \t <div class="panel panel-black"> 
 
\t \t \t \t \t <div class="panel-heading form-inline"> 
 
\t \t \t \t \t \t \t <div class="row"> 
 
\t \t \t \t \t \t \t \t <div class="col-md-8"> 
 
\t \t \t \t \t \t \t \t \t <label class="control-label" for="fromdate">From:</label> 
 
\t \t \t \t \t \t \t \t \t <input type="date" class="form-control" id="fromdate" name="fromdate"> 
 
\t \t \t \t \t \t \t \t \t <label class="control-label" for="todate">To:</label> 
 
\t \t \t \t \t \t \t \t \t <input type="date" class="form-control" id="todate" name="todate">&nbsp;&nbsp;&nbsp;&nbsp; 
 
\t \t \t \t \t \t \t \t \t <button type="submit" class="btn btn-success" name="todate" id="todate" style="width: 10%;" value="Date Run" >Go</button> 
 
\t \t \t \t \t \t \t \t </div> 
 
\t \t \t \t \t \t \t </div> 
 
\t \t \t \t \t </div> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 

 
\t \t \t <div class="row"> 
 
\t \t \t \t <div class="col-lg-3 col-md-6"> 
 
\t \t \t \t \t <div class="panel panel-blue"> 
 
\t \t \t \t \t \t <div class="panel-heading"> 
 
\t \t \t \t \t \t \t <div class="row"> 
 
\t \t \t \t \t \t \t \t <div class="col-xs-9 text-justify"> 
 
\t \t \t \t \t \t \t \t \t <div class="huge"><strong><?php echo $main_total_pledges; ?></strong></div> 
 
\t \t \t \t \t \t \t \t \t <div>Total Pledges</div> 
 
\t \t \t \t \t \t \t \t </div> 
 
\t \t \t \t \t \t \t \t .... 
 
\t \t \t \t \t \t \t </div> 
 
\t \t \t \t \t \t </div> 
 
\t \t \t \t \t </div> 
 
\t \t \t \t </div> 
 
\t \t </div> 
 
    </body> 
 
</html>

<?php 
    include('session.php'); 

    if(isset($_POST["todate"])=="Date Run") 
      { 
       $main_query = mysqli_query($db,"SELECT count(a.pledge_id) total_pledges, sum(case when processed_status = 'Approved' then 1 else 0 end) approved, sum(case when processed_status = 'Cancelled' then 1 else 0 end) Cancelled, sum(case when processed_status in ('Alien','Single Gift') then 1 else 0 end) Gift, sum(case when processed_status is null then 1 else 0 end) Pending from waysact_source a left join vlc_processed_item b on a.pledge_id = b.pledge_id where a.fundraiser in (select distinct concat(f_firstname,' ',f_lastname) fundraiser from fundraiser where f_company in (select contractor_name from contractor where company_name = '$_SESSION[login_user]')) and a.pledge_date = '2017-06-06'"); 
       $main_query_result = mysqli_fetch_row($main_query); 
       $main_total_pledges = $main_query_result[0]; 
       ... 
      } else 
      { 
       $main_query = mysqli_query($db,"SELECT count(a.pledge_id) total_pledges, sum(case when processed_status = 'Approved' then 1 else 0 end) approved, sum(case when processed_status = 'Cancelled' then 1 else 0 end) Cancelled, sum(case when processed_status in ('Alien','Single Gift') then 1 else 0 end) Gift, sum(case when processed_status is null then 1 else 0 end) Pending from waysact_source a left join vlc_processed_item b on a.pledge_id = b.pledge_id where a.fundraiser in (select distinct concat(f_firstname,' ',f_lastname) fundraiser from fundraiser where f_company in (select contractor_name from contractor where company_name = '$_SESSION[login_user]'))"); 
       $main_query_result = mysqli_fetch_row($main_query); 
       $main_total_pledges = $main_query_result[0]; 
       ... 
      } 

?> 
+0

あなたはajaxを使用していますか?あなたがどこに値を掲示するタグを書いているのですか? – pAsh

+0

クエリを送信するフォーム要素はどこですか?あなたのHTMLの中に。 AJAXを使用している場合は、それも表示してください。 – sagar

+0

まず第一に、 'id =" todate "と同じidを設定することはできません" –

答えて

0

あなたはデータを送信するために<form>タグを必要としています。いいえ

<form action="" method=""> 
    <div class="row"> 
     <div class="col-md-8"> 
      <label class="control-label" for="fromdate">From:</label> 
      <input type="date" class="form-control" id="fromdate" name="fromdate"> 
      <label class="control-label" for="todate">To:</label> 
      <input type="date" class="form-control" id="todate" name="todate">&nbsp;&nbsp;&nbsp;&nbsp; 
      <button type="submit" class="btn btn-success" name="todate" id="todate" style="width: 10%;" value="Date Run" >Go</button> 
     </div> 
    </div> 
</form> 
0

最初にIDを設定します。

<button type = "submit" class = "btn btn-success" name = "btnTodate" id = "btnTodate" style = "width: 10%;" value = "Date Run" >Go</button> 

そして、それ

$(document).on('click', 'btnTodate', function(){ 
var dataValue = {setQuery: 1, data: $("#form_ID").serialize()} 
$.ajax({ 
url: 'YOUR_PHP_FILE', 
dataType: "json", 
data: dataValue, success: function (r) { 
}})}); 

ようアヤックスを使用し、あなたは自分のフォームの表示に設定されたデータのすべての種類を取得することができ、ここで

YOUR_PHP_FILE.php

if (isset($_REQUEST['setQuery'])) { 
$dataAuto = array(); 
parse_str($_POST['data'], $dataAuto); 
if (!empty($dataAuto["todate"])) { 
    $main_query = mysqli_query($db, "SELECT count(a.pledge_id) total_pledges, sum(case when processed_status = 'Approved' then 1 else 0 end) approved, sum(case when processed_status = 'Cancelled' then 1 else 0 end) Cancelled, sum(case when processed_status in ('Alien','Single Gift') then 1 else 0 end) Gift, sum(case when processed_status is null then 1 else 0 end) Pending from waysact_source a left join vlc_processed_item b on a.pledge_id = b.pledge_id where a.fundraiser in (select distinct concat(f_firstname,' ',f_lastname) fundraiser from fundraiser where f_company in (select contractor_name from contractor where company_name = '{$_SESSION['login_user']}')) and a.pledge_date = '2017-06-06'"); 
    $main_query_result = mysqli_fetch_row($main_query); 
    $main_total_pledges = $main_query_result[0]; 
} else { 
    $main_query = mysqli_query($db, "SELECT count(a.pledge_id) total_pledges, sum(case when processed_status = 'Approved' then 1 else 0 end) approved, sum(case when processed_status = 'Cancelled' then 1 else 0 end) Cancelled, sum(case when processed_status in ('Alien','Single Gift') then 1 else 0 end) Gift, sum(case when processed_status is null then 1 else 0 end) Pending from waysact_source a left join vlc_processed_item b on a.pledge_id = b.pledge_id where a.fundraiser in (select distinct concat(f_firstname,' ',f_lastname) fundraiser from fundraiser where f_company in (select contractor_name from contractor where company_name = '{$_SESSION['login_user']}'))"); 
    $main_query_result = mysqli_fetch_row($main_query); 
    $main_total_pledges = $main_query_result[0]; 

} 
die;} 
関連する問題