2016-08-22 3 views
0

В приведенном ниже коде есть два запроса, в которых используются одни и те же переменные $ data и $ username. Второй запуск и обновления в базе данных отлично. Первый, однако, всегда возвращает NULL, и нет никакой логики, чтобы я мог видеть. Строка состояния существует в базе данных, она фактически установлена ​​и не может быть NULL. NULL даже не является опцией для этой ячейки, значение по умолчанию установлено на «неоткрытое». Что мне не хватает?PHP PDO MYSQL - переменная всегда null

if (isset($_POST['ids'])) { 

    $data = $_POST['ids']; 
    $query = $db->prepare("SELECT status FROM email WHERE mailto=:username AND id=:id"); 
    $query->bindValue(':username', $username); 
    $query->bindValue(':id', $data); 
    $query->execute(); 
    $thestatus = $row['status']; 

    echo $thestatus; 

    $query = $db->prepare("UPDATE email SET status='opened' WHERE mailto=:username AND id=:id"); 
    $query->bindValue(':username', $username); 
    $query->bindValue(':id', $data); 
    $query->execute(); 
} 

ответ

2

Вы должны выполнить $row = $query->fetch(PDO::FETCH_ASSOC); после выполнения инструкции для извлечения результирующего набора Row

+0

ба я знал, что я проглядел что-то простое. – Bruce

+0

Случается для всех нас :) – jedifans