0

リストがあり、datatable プラグインを使用して、それらを明確に並べ替えます。その前にphpコーディングだけでソート済みリストを作っています。そして現在のリストによると、csvファイルにエクスポートできます.私のコードは次のようでした:

header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=data.csv');



  // create a file pointer connected to the output stream
    $output = fopen('php://output', 'w');

$rows = mysql_query(base64_decode($_REQUEST['qur']));
        $number = mysql_num_rows($rows);
        if($number > 0){

            fputcsv($output, array('Name','Username','Email','Age','Location','Contact','Privilege','JoiningDate','Status'));

            // loop over the rows, outputting them
            $blankArray = array();
            while ($row = mysql_fetch_assoc($rows)) {
                $name = $row['admin_name'];
                $username = $row['username'];
                $email = $row['email'];
                $age = $row['age'];
                $location = $row['location'];
                $cont = $row['contact_no'];
                $priv = get_role_name_by_id($row['role']);
                $doj = substr($row['creation_date'],0,10);
                $status = ($row['status'] == '1')?"enable":"disable";
                $blankArray['Name'] = $name;
                $blankArray['Username'] = $username;
                $blankArray['Email'] = $email;
                $blankArray['Age'] = $age;
                $blankArray['Location'] = $location;
                $blankArray['Contact'] = $cont;
                $blankArray['Privilege'] = $priv;
                $blankArray['JoiningDate'] = $doj;
                $blankArray['Status'] = $status;

                fputcsv($output, $blankArray);

            }
        }else{
            fputcsv($output, array('No Record Found'));
        }

そして、ページから次のコードを使用していました。

<a href="export.php?report=user&qur=<?php echo base64_encode($search_sql); ?>"><button>Export to CSV</button></a>

ここで、datatable プラグインの並べ替えオプションを変更し、次のコードを使用します。

$('#example').dataTable( {
                                "bProcessing": true,
                                "bServerSide": true,
                                "sAjaxSource": "datatabledb.php",
                                "bJQueryUI": true,
                                "sPaginationType": "full_numbers",
                                //"sDom": 'T<"clear">lfrtip',
                                "oTableTools": {
                                    "aButtons": [
                                        {
                                            "sExtends": "copy",
                                            "sButtonText": "Copy to clipboard"
                                        },
                                        {
                                            "sExtends": "csv",
                                            "sButtonText": "Save to CSV"
                                        },
                                        {
                                            "sExtends": "xls",
                                            "sButtonText": "Save for Excel"
                                        }
                                    ]
                                }                       
                            } );

しかし、まだボタンも表示されていません。私を助けてください。

4

1 に答える 1

0

必要なことを行う TableTools を使用できます。

このリンクを参照してください。例については、ドキュメントのこのリンクを参照してください!

于 2012-05-16T13:38:33.313 に答える