Wordpress php SELECT可能的语法错误

时间:2018-03-19 22:18:29

标签: php mysql sql wordpress phpmyadmin

所以,我从这个字段的表格中获取

$OrderLNumber = $_POST['OrderLNumber'];

当我用Echo检查它时它工作正常。 然后我将我的数据库连接到经典:

// Database Connection String
                $con = mysql_connect($db_hostname,$db_username,$db_password);
                if (!$con)
                {
                die('Could not connect: ' . mysql_error());
                }

                mysql_select_db($db_database, $con);

哪个有效,因为页面实际上正在加载。当我弄乱代码的这一面时,页面无法加载。
然后我实际上尝试获取SELECT FROM WHERE并打印结果行。我不知道我在这部分代码中犯了什么样的错误:

$sql = "SELECT * FROM OrderStatus WHERE OrderLineNumber = $OrderLNumber "; 
                $result = mysql_query($con,$sql); 
                if (mysql_num_rows($result) > 0) {  

                while ($row = mysql_fetch_array($result)){  
                        echo 'OrderLineNumber: ' .$row['OrderLineNumber'];  
                        echo 'Date Started: ' .$row['DateStarted'];  
                        echo 'Status: '.$row['Status'];  

                        }  

                    }

我不明白它是语法错误,服务器端错误还是逻辑错误。
非常感谢你提前。

更新(这应该有效吗?)

<?php

if($_POST['submit']) {

                    $OrderLNumber = $_POST['OrderLNumber'];
                    $results = $wpdb->get_results(  
                                "
                                SELECT * FROM $wpdb->OrderStatus WHERE OrderLineNumber = $OrderLNumber
                                "
                                );
                    foreach ($results as $result)
                    {
                        echo $result;
                    }
                        }
        else { 


        ?>

1 个答案:

答案 0 :(得分:0)

试试这段代码。

<?php

    if($_POST['submit']) {

        global $wpdb;

        $OrderLNumber = $_POST['OrderLNumber'];

        $results = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}OrderStatus WHERE OrderLineNumber = $OrderLNumber");

        foreach ($results as $result)
        {
        echo $result;
        }
    }
?>