I have a simple menu where I click a link to show some data in a div:

[code]
        $('#view_data').click(function() {
                $.get("viewplayers.php",
                        function(data){
                                $('#contentcolumn').html(data);
                        });
                        return false;
        });
[/code]

viewplayers.php is the standard flexigrid setup, and the data it retrieves
is correct - the only problem is that is it not in a grid, and the column
headers are not there.  Here is a sample of the data it puts into my
contentcolumn div:


[data]
{ page: 1, total: 90, rows: [ {cell:['John','Smith','(703) 455-2485','7807
Smithfield Road','Springfield','DC','22153','Sandy','Smith','(703)
222-2222','[EMAIL PROTECTED]','John','Wright','[EMAIL PROTECTED]','...
[/data]

Here is my viewplayers.php script:

[code]
<link rel="stylesheet" type="text/css" href="css/flexigrid.css" />
<script type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="js/flexigrid.js"></script>
<script type="text/javascript">
$(document).ready(function(){
        $.getScript('js/flexigrid.js');
        $("#contentcolumn").flexigrid
                        (
                        {
                        // url: 'viewplayers2.php',
                        dataType: 'json',
                        colModel : [
                                {display: 'First Name', name : 'p_firstname', 
width : 60, sortable :
true, align: 'center'},
                                {display: 'Last Name', name : 'p_lastname', 
width : 80, sortable : true,
align: 'center'},
                                {display: 'Home Phone', name : 'homephone', 
width : 100, sortable :
true, align: 'center'},
                                {display: 'Address', name : 'address', width : 
140, sortable : true,
align: 'center'},
                                {display: 'City', name : 'city', width : 80, 
sortable : true, align:
'center'},
                                {display: 'State', name : 'state', width : 20, 
sortable : true, align:
'center'},
                                {display: 'Zip', name : 'zip', width : 80, 
sortable : true, align:
'center'},
.                                ....
                                ],
                        sortname: "p_lastname",
                        sortorder: "asc",
                        usepager: true,
                        title: "Player Data",
                        useRp: true,
                        rp: 10,
                        showToggleBtn: false,
                        width: 'auto',
                        height: 'auto'
                        }
                        );   
        
});

</script>




<? 
error_log("top of viewplayers2");
$table="player_info";
function runSQL($rsql) {
        $hostname = "domain.com";
        $username = "user";
        $password = "user";
        $dbname   = "database";
        $connect = mysql_connect($hostname,$username,$password) or die ("Error:
could not connect to database");
        $db = mysql_select_db($dbname);
        $result = mysql_query($rsql) or die ('Bad query'); 
        return $result;
        mysql_close($connect);
}

function countRec($fname,$tname) {
        $sql = "SELECT count($fname) FROM $tname";
        $result = runSQL($sql);
        error_log("sql is $sql\n");
        while ($row = mysql_fetch_array($result)) {
                return $row[0];
        }
}

$page = $_POST['page'];
$rp = $_POST['rp'];
$sortname = $_POST['sortname'];
$sortorder = $_POST['sortorder'];


if (!$sortname) $sortname = 'p_lastname';
if (!$sortorder) $sortorder = 'desc';
$sort = "ORDER BY $sortname $sortorder";

if (!$page) $page = 1;
if (!$rp) $rp = 20;

$start = (($page-1) * $rp);

$limit = "LIMIT $start, $rp";

$sql = "SELECT * FROM $table $sort $limit";
$result = runSQL($sql);;

$total = countRec('p_lastname','player_info');
error_log("number of records is $total\n");

$json = "";
$json .= "{\n";
$json .= "page: $page,\n";
$json .= "total: $total,\n";
$json .= "rows: [";
$rc = false;

while ($row = mysql_fetch_array($result)) {
        if ($rc) $json .= ",";
        $json .= "\n{";
        $json .= "cell:['".$row['p_firstname']."'";
        $json .= ",'".addslashes($row['p_lastname'])."'";
        $json .= ",'".addslashes($row['homephone'])."'";
        $json .= ",'".addslashes($row['address'])."'";
        $json .= ",'".addslashes($row['city'])."'";
        $json .= ",'".addslashes($row['state'])."'";
        $json .= ",'".addslashes($row['zip'])."'";
        .......
        $json .= "}";
        $rc = true;
}
$json .= "]\n";
$json .= "}";
echo $json;
?>
[/code]

-- 
View this message in context: 
http://www.nabble.com/flexigrid-problem---no-headers%2C-data-in-wrong-format-tp19378185s27240p19378185.html
Sent from the jQuery General Discussion mailing list archive at Nabble.com.

Reply via email to