dsvyc66464 2013-12-12 18:39
浏览 17
已采纳

too long

My two DB arrays:

ORDER --> (id, customer_id)

CUSTOMER --> (id, name)

They have foreign key(order.customer_id and customer.id).

I have an html form with a textfield and submit button, that user gives the name of the customer and i want to take from a query, the orders of the selected customer. This is my code, I have an error in SELECT statement. If anyone can help...

     <?php

$connect = mysql_connect("localhost", "root", "") or die("Unable to connect to MySQL");

$selected = mysql_select_db("eshop", $connect) or die("Could not select examples");

if (isset($_POST['name'])) {
$customerName = $_POST['name'];
}


$result = mysql_query("SELECT order.id 
                   FROM  order, customer              
                   WHERE order.customer_id = customer.id
                   AND customer.name = $customerName
                   ");          



if($result === FALSE) {
die(mysql_error()); // TODO: better error handling
}
while($row = mysql_fetch_array($result))
{
echo $row['order.id'];

}

 mysql_close($connect);
 ?>
  • 写回答

4条回答 默认 最新

  • doudou6050 2013-12-12 18:42
    关注

    order is a reserved word, so use backticks to wrap it with. I.e.: `order`

    $result = mysql_query("SELECT `order`.id
            FROM  `order`, customer
            WHERE `order`.customer_id = customer.id
            AND customer.name = '$customerName'
            ");
    

    Your Code:

            if (isset($_POST['name'])) {
                $customerName = trim($_POST['name']);
    
                $result = mysql_query("SELECT `order`.id as OrderId
                        FROM  `order`, customer
                        WHERE `order`.customer_id = customer.id
                        AND customer.name = '$customerName'
                        ") or die(mysql_error());               
    
                while($row = mysql_fetch_array($result))
                {
                    echo $row['OrderId'];
    
                }               
            }
    

    Note: Use mysqli_* functions or PDO instead of mysql_* functions(deprecated)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100