在jquery和php之间切换变量

时间:2014-06-27 17:06:58

标签: php jquery mysqli

我在这个主板上看到过这样的问题,但没有一个与我的情况完全一致,所以在你读完我的问题之前请不要让我失望。

我有一张桌子。表的每一个都有一个与mysql数据库中的字段匹配的id。当你点击th时,我想按照desc的方向对数据库进行查询。如果再次单击相同的字段,我希望查询按asc方向排序。

问题在于维持各州的方向价值。到目前为止,单击表格标题时方向不会改变。

任何人都可以告诉我我做错了什么吗?

HTML:

<div id="content"></div>

jquery的:

$(document).ready(function() {
    loadData();
});

function loadData(orderby) {
    $.ajax({         
        url: 'display.php',         
        type: "POST",         
        data: ({orderby: orderby, direction: 'desc'}),         
        success: function(data){ 
            $("#content").hide();       
            $("#content").html(data);         
            $("#content").show();
            $('th').click(function(){
                    var orderby = $(this).attr('id');
                    loadData(orderby);
            });
        }     
    }); 
 }

PHP:

$db = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if (mysqli_connect_errno()) {
    printf("Connect failed: %s", mysqli_connect_error());
    exit;
}

if(isset($by) and $by==" ASC"){
    $by=" DESC";
}else{
    $by=" ASC";
}

if (isset($_POST["orderby"])) {
    $orderby = $_POST["orderby"];
    //echo $orderby;
}

//build a query on the database
$q = "Select * from uncompensated";
if (isset($_POST["orderby"])) {
    $q .= " order by " . $orderby;
} else {
    $q .= ' order by year2013';
}
if (isset($by)) {
    $q .= $by;
    echo $q;
} else {
    $by = ' DESC';
    $q .= $by;
    echo $q;
}

//echo $q;
$result = $db->query($q);

echo "<table cellspacing='0' >";
echo "<tr id='header'><th id='Name'>Name</th><th id='year2013'>2013</th><th id='year2012'>2012</th><th id='year2011'>2011</th><th id='year2010'>2010</th><th id='year2009'>2009</th><th id='year2008'>2008</th><th id='year2007'>2007</th><th id='year2006'>2006</th><th id='year2005'>2005</th><th id='year2004'>2004</th><th id='year2003note'>* 2003</th><th id='year2002'>2002</th><th id='year2001'>2001</th><th id='year2000'>2000</th><th id='year1999'>1999</th><th id='year1998'>1998</th><th id='year1997'>1997</th></tr>";
 while($row = $result->fetch_array(MYSQLI_ASSOC)) {
    (code)
}

0 个答案:

没有答案