Php 未定义索引:排序
我正在尝试排序,但这表示排序未定义: 注意:未定义的索引:在第23行的C:\xampp\htdocs\index.php中排序 注意:未定义的索引:在第27行的C:\xampp\htdocs\index.php中排序 注意:未定义的索引:在第31行的C:\xampp\htdocs\index.php中排序 注意:未定义的索引:在第35行的C:\xampp\htdocs\index.php中排序 有人能帮忙吗Php 未定义索引:排序,php,Php,我正在尝试排序,但这表示排序未定义: 注意:未定义的索引:在第23行的C:\xampp\htdocs\index.php中排序 注意:未定义的索引:在第27行的C:\xampp\htdocs\index.php中排序 注意:未定义的索引:在第31行的C:\xampp\htdocs\index.php中排序 注意:未定义的索引:在第35行的C:\xampp\htdocs\index.php中排序 有人能帮忙吗 <tbody>
<tbody>
<?php
$sortby = isset($_GET['sort']) ? $_GET['sort'] : 'id';
if ($_GET['sort'] == 'id')
{
$sql .= " ORDER BY id";
}
elseif ($_GET['sort'] == 'nome')
{
$sql .= " ORDER BY nome";
}
elseif ($_GET['sort'] == 'idade')
{
$sql .= " ORDER BY idade";
}
elseif($_GET['sort'] == 'peso')
{
$sql .= " ORDER BY peso";
}
$serverName = "asdaf-DEMO";
$options = array( "UID" => "sa", "PWD" => "fasdasd", "Database" => "demo");
$conn = sqlsrv_connect($serverName, $options);
if( $conn ) {
$sql="SELECT * FROM cliente";
$aResult=sqlsrv_query($conn, $sql);
while($rows = sqlsrv_fetch_array($aResult))
{
$id = $rows['id'];
$nome = $rows['nome'];
$idade = $rows['idade'];
$peso = $rows['peso'];
?>
用if($sortBy
出现此错误的原因是您只有一个isset检查。这很好,但在代码中,您稍后会返回使用
$\u GET['sort']
,而不检查它是否已设置。您使用$sortby
变量填充$\u GET['sort']
在if条件中。在if/else
条件之后另外覆盖$sql
:
<tbody>
<?php
$sortby = isset($_GET['sort']) ? $_GET['sort'] : 'id';
$sortOrder = isset($_GET['order']) ? $_GET['order'] : 'ASC';
$orderBy = '';
if ($sortby== 'id')
{
$orderBy .= " ORDER BY id";
}
elseif ($sortby== 'nome')
{
$orderBy .= " ORDER BY nome";
}
elseif ($sortby== 'idade')
{
$orderBy .= " ORDER BY idade";
}
elseif($sortby== 'peso')
{
$orderBy .= " ORDER BY peso";
}
$serverName = "asdaf-DEMO";
$options = array( "UID" => "sa", "PWD" => "fasdasd", "Database" => "demo");
$conn = sqlsrv_connect($serverName, $options);
if( $conn ) {
$sql="SELECT * FROM cliente" . $orderBy . ' ' . $sortOrder;
$aResult=sqlsrv_query($conn, $sql);
while($rows = sqlsrv_fetch_array($aResult))
{
$id = $rows['id'];
$nome = $rows['nome'];
$idade = $rows['idade'];
$peso = $rows['peso'];
?>
注意:未定义变量:sortBy在C:\xampp\htdocs\index.php第23行抱歉必须是$sortBy
(小写),但您自己也可以看到。您上面代码中哪一行是行号23?如果($\u GET['sort']='id'))谢谢,顺便说一句,它只对ASC进行排序,如果我再次单击以对DESC进行排序,我将如何进行排序?您可以发送查询参数,如$\u GET['order']
,并使用它。我更新了我的答案以使用php代码,但我没有访问您的html代码来更新它。