2017-11-24 3 views
0

図に示されているように、私は今支払う2つのボタンを持っていますが、ボタンを押すとどのように行からデータを取得してモーダルに出力しますか?私が$row['paymentAmount']をしたら、たびに最後の行を表示するだけです。どのようにしてボタンを行に関連付けることができるので、モーダルに正しい金額が表示されますか?2が出力されたときに最初の行からデータを取得する方法

enter image description here

<div class='payment_container'> 
<div class='row col-md-12 custyle'> 
    <table class='table table-striped custab'> 
     <thead> 
      <tr> 
       <th>ID</th> 
       <th>Name</th> 
       <th>Ammount</th> 
       <th>Due Date</th><?php if ($_SESSION['renterID'] == 0) { 
                  echo "<th class='text-center'>Paid?</th>"; 
                  } else { 
                  echo "<th class='text-center'>Action</th>"; 
                  } 
                  ?> 
      </tr> 
     </thead><?php 
             include_once 'includes/database.php'; 
             if ($_SESSION['renterID'] == 0){ 
              $sql = "SELECT firstName, lastName, paymentID, paymentAmount, paymentDate, paymentPaid FROM renter, payment WHERE renter.renterID = payment.renterID ORDER BY paymentDate ASC"; 

             } else { 
              $sql = "SELECT firstName, lastName, paymentID, paymentAmount, paymentDate, paymentPaid FROM renter, payment WHERE renter.renterID = payment.renterID AND $_SESSION[renterID] = renter.renterID"; 
             } 
             $result = mysqli_query($conn, $sql); 
             $resultCheck = mysqli_num_rows($result); 


             if ($resultCheck > 0) { 
              while($row = $result->fetch_assoc()) { 
              echo 
              "<tr> 
               <td>$row[paymentID]</td> 
               <td>$row[firstName] $row[lastName]</td> 
               <td>$row[paymentAmount]</td> 
               <td>";echo date ('F d, Y', strtotime($row['paymentDate'])); echo "</td>"; 
               if ($_SESSION['renterID'] == 0) { 
                if ($row['paymentPaid'] == '0') { 
                echo "<td class='text-center'><a class='btn btn-danger btn-sm'><i class='fa fa-times' aria-hidden='true'>Paid</i></a></td>"; 
                } else { 
                echo "<td class='text-center'><a class='btn btn-success btn-sm'><i class='fa fa-check' aria-hidden='true'>Paid</i></a></td>"; 
                } 
               } else { 
               if ($row['paymentPaid'] == '0'){ 
                echo "<td class='text-center'><button href='#' class='btn btn-success btn-sm' data-toggle='modal' data-target='#pay_now' name='payNowID' value='$row[paymentAmount]'><i class='fa fa-usd' aria-hidden='true'>Pay Now</i></button><input type='hidden' </td>"; 

               } else { 
                echo "<td class='text-center'><a class='btn btn-sm'><i class='fa fa-check' aria-hidden='true'>Paid</i></a></td>"; 
               } 
               } 
              echo "</tr>"; 
              } 
             } else { 
              echo "<tr><td colspan='5'>No payments at this time</td></tr>"; 
             } 
             ?> 
    </table> 
</div> 

ありがとう!申し訳ありませんが、これは私がPHPに慣れて勉強しようとすると意味をなさないでしょう。

+0

ボタンをクリックすると、この 'ButtonId = rowId'のようなことができます。データを新しい空の配列に格納し、その結果をモーダルに出力します。 – aaa

答えて

0

ボタンがクリックされた行のIDを使用します。

+0

2つのボタンのどれが押されているかを知ることができますか? –

+0

各行のID番号に基づいて、各PAYNOWボタンにIDの値を設定します。すべてのテーブルの内容をループしてIDを取得し、それをID属性に設定してPAY NOWに入れます。 編集:td:nth-​​childをループしてみてください:) – Skyflakes

関連する問題