【问题标题】:Notice: Undefined variable: ordenarpor [closed]注意:未定义的变量:ordenarpor [关闭]
【发布时间】:2017-06-19 07:46:03
【问题描述】:

我在尝试使用 MSSQL 数据库中的会话对结果进行排序时遇到此错误。我想我已经定义了变量,但我仍然没有定义变量。这是代码:

                    session_start();
                $ordernarpor = 'id';
                if(isset($_GET['orderna']))
                {
                    $ordernarpor = $_GET['orderna'];
                    $_SESSION['orderna'] = $ordernarpor;
                }
                else if(isset($_SESSION['orderna']))
                {
                    $ordernarpor = $_SESSION['orderna'];
                }
                $ordenar = '';
                if ($ordenarpor== 'id')
                {
                    $ordenar .= " ORDER BY id";
                }
                elseif ($ordenarpor== 'nome')
                {
                    $ordenar .= " ORDER BY nome";
                }
                elseif ($ordenarpor== 'idade')
                {
                    $ordenar .= " ORDER BY idade";
                }
                elseif($ordenarpor== 'peso')
                {
                    $ordenar .= " ORDER BY peso";
                }   
                $nomeServidor = "fsadxas-DEMO"; 
                $opcao = array(  "UID" => "sa",  "PWD" => "xzcsa",  "Database" => "demo");
                $conexao = sqlsrv_connect($nomeServidor, $opcao);
                if( $conexao ) {
                $sql="SELECT * FROM cliente" . $ordenar;
                $aResult=sqlsrv_query($conexao, $sql);
                while($rows = sqlsrv_fetch_array($aResult))
                { 
                    $id = $rows['id'];
                    $nome = $rows['nome'];
                    $idade = $rows['idade'];
                    $peso = $rows['peso'];

如果有人能帮我解决这个问题,谢谢

【问题讨论】:

标签: php sql sql-server


【解决方案1】:

替换那些代码

            $ordernarpor = 'id';
            if(isset($_GET['orderna']))
            {
                $ordernarpor = $_GET['orderna'];
                $_SESSION['orderna'] = $ordernarpor;
            }
            else if(isset($_SESSION['orderna']))
            {
                $ordernarpor = $_SESSION['orderna'];
            }
            $ordenar = '';
            if ($ordernarpor == 'id')
            {
                $ordenar .= " ORDER BY id";
            }
            elseif ($ordernarpor== 'nome')
            {
                $ordenar .= " ORDER BY nome";
            }
            elseif ($ordernarpor== 'idade')
            {
                $ordenar .= " ORDER BY idade";
            }
            elseif($ordernarpor== 'peso')
            {
                $ordenar .= " ORDER BY peso";
            } 

您使用了 ordernarpor 和 ordenarpor。但你只定义了 ordernarpor。

【讨论】:

  • 你能解释一下你到底换了什么吗?
  • 您使用了 ordernarpor 和 ordenarpor。但是您只定义了 ordernarpor。如果要定义 2 个变量,则定义 2 个变量。
【解决方案2】:

您已将变量初始化为 $ordernarpor,但使用与 $ordnarpor 相同的变量。这只是一个拼写错误而已。

【讨论】:

    猜你喜欢
    • 2013-04-08
    • 2012-09-24
    • 1970-01-01
    • 2021-03-07
    相关资源
    最近更新 更多