0

jqueryを使用して、データベースのすべてのデータをクリックしてテーブルに表示するボタンがあるページが1つあります。列見出しをクリックしてテーブルを並べ替える必要があります。問題は、テーブルにデータが入力される方法です。コードを参照してください。私はそれを移入するphpコードを持っています。列はID、ライセンスなどです。列に基づいて並べ替える必要があります。

<?php

    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $query = "
        my query from database to display all the values
                                ";
                        $result= $dbh->prepare($query,array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
                        $result->execute();

                        echo "<table id='abc' class='abcd' width='100%'><tr>"
                            . "<th id='mydata' class='myd' onclick='loadOrderedData(myd)'>ABC</th>"
                            . "<th>DEF</th>"
                            .......
                            . "</tr>";

                        while($data=$result->fetch(PDO::FETCH_ASSOC,PDO::FETCH_ORI_NEXT))
                        {
                            echo "<tr>"
                                . "<td>" . $data['ABC'] . "</td>"
                                . "<td>" . $data['DEF'] . "</td>"
                                .......
                                . "</tr>";

                        }

                        echo "</table>";
                    ?>

最初は非表示のdivに表示され、次にjqueryを使用して、データを取得するボタンのクリックで非表示にされます。実行可能な解決策を教えてください。

<a href="#" >onclickメソッドを作って活用してみました。機能しません。データの入力方法が原因である可能性があります。

4

1 に答える 1

0

コメントの ops に関する質問... order by を使用したクエリの例...

 SELECT * FROM `my_table` ORDER BY `price` ASC 

.... これは、価格列の値で並べ替えられた結果を返します。ajax を使用すると、jQuerys .load 関数を使用できます。ソートする列の get 変数を使用して URL を渡します。< tr > に ID を指定する必要があります。ID を 'data' と呼ぶと、クリックする列には onclick="loadOrderedData( columnName)" のような属性呼び出しロード関数...

function loadOrderedData(orderBy){
 $('#data').load('aPhpPageThatReturnsData.php?orderBy='+orderBy);
}

そのため、クエリと呼ばれるファイルでは、次のようになります

SELECT * FROM `my_table` ORDER BY `$_GET['orderBy']` ASC 
//code to create new html for your data <tr> using sorted data

うまくいけば、それは役に立ちます。アップデート ....

$result->execute();
?>
<table id='abc' class='abcd' width='100%'>
    <tr>
        <th class='myd' onclick='loadOrderedData("myd")'>ABC</th>
        <th>DEF</th>
     </tr>
      <tr>
          <td colspan="2">
             <table id="myData">
    <?php
while($data=$result->fetch(PDO::FETCH_ASSOC,PDO::FETCH_ORI_NEXT))
{ ?>
                <tr>
                   <td><?=$data['ABC']?></td>
                   <td><?=$data['DEF']?></td>
                </tr>
<?php
} ?>
         </table>
      </td>
    </tr>
 </table>
于 2013-09-14T07:15:28.573 に答える