致命错误:未捕获异常'PDOException',消息'SQLSTATE [42S22]:未找到列:1054'where子句'中的未知列'id'

时间:2015-02-11 12:45:18

标签: pdo stack pdostatement

<?php 
require 'database.php';
$id = 0;

if ( !empty($_GET['user_id'])) {
    $id = $_REQUEST['user_id'];
}

if ( !empty($_POST)) {
    // keep track post values
    $id = $_POST['user_id'];

    // delete data
    $pdo = Database::connect();
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "DELETE FROM admin  WHERE id = ?";  ===> Wrong on here.. //LINE18
    $q = $pdo->prepare($sql);
    $q->execute(array($id));
    Database::disconnect();
    header("Location: index.php"); 

} 

&GT;

有人可以帮帮我吗?为什么我得到了 带有消息'SQLSTATE [42S22]

的未捕获异常'PDOException' 抱歉,我的英语不好, 感谢

3 个答案:

答案 0 :(得分:1)

错误消息表明数据库中的表admin没有名为id的列。您需要检查表中可用的列,但没有更多信息(例如表定义),我可以提供更多帮助。

答案 1 :(得分:1)

True $sorguemir = $db_conn->query("SELECT * FROM komut WHERE emir = '".$eslestir."'"); False $sorguemir = $db_conn->query("SELECT * FROM komut WHERE emir =$eslestir");

答案 2 :(得分:0)

这将解决您遇到的问题,我遇到了类似的问题,但我设法解决了该问题。

{$sql = "DELETE FROM admin where id =".$_GET['id'];}