如何在PHP、SQLSRV中单击标题ASC/DESC对表进行排序
我们想按标题对如何在PHP、SQLSRV中单击标题ASC/DESC对表进行排序,php,sorting,sqlsrv,Php,Sorting,Sqlsrv,我们想按标题对SQLSRV/PHP表进行排序[JobTitle]和[Status],我们尝试使用$\u GET选项,但无法按照表代码对其进行管理。我们无法将$\u GET解决方案置于工作状态 <html> <head> <title>PHP & SQL Server (sqlsrv)</title> </head> </head> <body> <div class="table-title">
SQLSRV/PHP
表进行排序[JobTitle
]和[Status]
,我们尝试使用$\u GET
选项,但无法按照表代码对其进行管理。我们无法将$\u GET
解决方案置于工作状态
<html>
<head>
<title>PHP & SQL Server (sqlsrv)</title>
</head>
</head>
<body>
<div class="table-title">
<h3>Test table</h3>
<?php
ini_set('display_errors', 1);
error_reporting(~0);
$serverName = "localhost";
$userName = "username";
$userPassword = "password";
$dbName = "AdWorks";
$connectionInfo = array("Database"=>$dbName, "UID"=>$userName, "PWD"=>$userPassword, "MultipleActiveResultSets"=>true);
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
?>
<form action="list.php" method="POST">
<select name="RegSelect"><option> Choose </option>
<?php
$sql = "SELECT DISTINCT CountryRegionName FROM dbTest ORDER BY CountryRegionName";
$resultRg = sqlsrv_query($conn,$sql) or die("Couldn't execut query");
while ($data=sqlsrv_fetch_array($resultRg, SQLSRV_FETCH_ASSOC)){
echo '<option value="'.$data['CountryRegionName'].'">';
echo $data['CountryRegionName'];
echo "</option>";
}
if(empty($_POST['RegSelect'])){
$_SESSION['tower'] = '';
} else {
$stmt = "SELECT BusinessEntityID, FirstName, LastName, JobTitle, PhoneNumber, PhoneNumberType, EmailAddress, AddressLine1, City, PostalCode, CountryRegionName, Status FROM dbTest WHERE CountryRegionName = '".$_POST['RegSelect']."'";
$qry = sqlsrv_query($conn, $stmt);
}
?>
<input type="submit" value="Select Tower">
</select></br></br>
</form>
<table align="center">
<tr>
<th width="91"> <div align="center">BusinessEntityID </div></th>
<th width="98"> <div align="center">FirstName </div></th>
<th width="198"> <div align="center">LastName </div></th>
<th width="97"> <div align="center">JobTitle </div></th>
<th width="59"> <div align="center">PhoneNumber </div></th>
<th width="71"> <div align="center">PhoneNumberType </div></th>
<th width="30"> <div align="center">EmailAddress </div></th>
<th width="30"> <div align="center">AddressLine1 </div></th>
<th width="30"> <div align="center">City </div></th>
<th width="30"> <div align="center">PostalCode </div></th>
<th width="30"> <div align="center">CountryRegionName </div></th>
<th width="30"> <div align="center">Status </div></a></th>
<th width="30"> <div align="center">Edit </div></th>
</tr>
<tbody class="rows">
<?php
while($result = sqlsrv_fetch_array($qry, SQLSRV_FETCH_ASSOC)){
//print_r($result);
?>
<tr>
<td><div align="center"><?=$result["BusinessEntityID"];?></div></td>
<td><div align="center"><?=$result["FirstName"];?></div></td>
<td><?=$result["LastName"];?></td>
<td align="right"><?=$result["JobTitle"];?></td>
<td align="right"><?=$result["PhoneNumber"];?></td>
<td align="right"><?=$result["PhoneNumberType"];?></td>
<td align="right"><?=$result["EmailAddress"];?></td>
<td align="right"><?=$result["AddressLine1"];?></td>
<td align="right"><?=$result["City"];?></td>
<td align="right"><?=$result["PostalCode"];?></td>
<td align="right"><?=$result["CountryRegionName"];?></td>
<td align="right"><?=$result["Status"];?></td>
<td align="center"><a href="edit_bck.php?BusinessEntityID=<?php echo $result["BusinessEntityID"];?>">Edit </a></td>
</tr>
<?php
}
?>
</table>
<?php
sqlsrv_close($conn);
?>
</body>
</html>
PHP和sqlserver(sqlsrv)
试验台
选择
在理解了JQuery Tablesorter的工作原理之后,我发现了使用JQuery Tablesorter的解决方案
<html>
<head>
<title>SQL Server (sqlsrv)</title>
<link rel="stylesheet" href="jquery/themes/blue/style.css" type="text/css" media="print, projection, screen" />
<script type="text/javascript" src="jquery/jquery-3.2.1.js"></script>
<script type="text/javascript" src="jquery/jquery.tablesorter.js"></script>
<script type="text/javascript" src="jquery/jquery.tablesorter.widgets.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#myTable").tablesorter();
}
);
</script>
</head>
<body>
<div class="table-title">
<h3>Test Table</h3>
<?php
ini_set('display_errors', 1);
error_reporting(~0);
include('connect.php');
?>
<form action="list.php" method="POST">
<select name="RegSelect"><option> Choose </option>
<?php
$query1 = "SELECT DISTINCT CountryRegionName FROM someDB ORDER BY CountryRegionName";
$stmt1 = $conn->query( $query1 );
while ($data = $stmt1->fetch(PDO::FETCH_ASSOC)){
echo '<option value="'.$data['CountryRegionName'].'">';
echo $data['CountryRegionName'];
echo "</option>";
}
if(empty($_POST['RegSelect'])){
$_SESSION['tower'] = '';
} else {
$query2 = "SELECT BusinessEntityID, FirstName, LastName, JobTitle, PhoneNumber, PhoneNumberType, EmailAddress, AddressLine1, City, PostalCode, CountryRegionName, Status FROM someDB WHERE CountryRegionName = '".$_POST['RegSelect']."' ORDER BY JobTitle ASC";
$stmt2 = $conn->query( $query2 );
}
?>
<input type="submit" value="Select Tower">
</select></br></br>
</form>
<table id="myTable" class="tablesorter" align="center">
<thead>
<tr>
<th width="91">Entity ID</th>
<th width="98">Fist Name</th>
<th width="198">Last Name</th>
<th width="97">Job Title</th>
<th width="59">Phone Number</th>
<th width="71">Phone Type</th>
<th width="30">Email Address</th>
<th width="30">Address</th>
<th width="30">City</th>
<th width="30">Postal Code</th>
<th width="30">Region Name</th>
<th width="30">Status</th>
<th width="30">Edit</th>
</tr>
<thead>
<tbody>
<?php
if(empty($stmt2)){
echo '';
}else{
while ($result = $stmt2->fetch(PDO::FETCH_ASSOC)){
?>
<tr>
<td><?=$result["BusinessEntityID"];?></td>
<td><?=$result["FirstName"];?></td>
<td><?=$result["LastName"];?></td>
<td><?=$result["JobTitle"];?></td>
<td><?=$result["PhoneNumber"];?></td>
<td><?=$result["PhoneNumberType"];?></td>
<td><?=$result["EmailAddress"];?></td>
<td><?=$result["AddressLine1"];?></td>
<td><?=$result["City"];?></td>
<td><?=$result["PostalCode"];?></td>
<td><?=$result["CountryRegionName"];?></td>
<td><?=$result["Status"];?></td>
<td><a href="edit_bck.php?BusinessEntityID=<?php echo $result["BusinessEntityID"];?>">Edit </a></td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</body>
</html>
SQL Server(sqlsrv)
$(文档).ready(函数()
{
$(“#myTable”).tablesorter();
}
);
试验台
选择
不了解您的要求我们希望当您单击标题[jobtile
]或[Status
]时,表格按[jobtile
]或[Status
]ASC
或DESC
排序。您想使用PHP get请求进行排序吗?如果可以的话,为什么不呢?但是任何其他的解决方案都是受欢迎的。我们发现这段代码不起作用:if(isset($by)和$by==“DESC”){$by=“ASC”}或者{$by=“DESC”}
和在头上