2013-06-12 4 views
0

Ничего не отображается, и ошибка не выводится. Я определил $id. Есть идеи?Ошибка, но запрос не возвращает результатов

<tr> 
<td width="160">Price:</td> 
<?php 
    dbconnect(); 
    $stmt2 = $conn->prepare("SELECT Length, price FROM Product WHERE ProdID=:id LIMIT 1"); 
    $stmt2->bindParam('id',$id); 
    $stmt2->execute(); 
    $i = 0; 
    foreach ($stmt2->fetchAll(PDO::FETCH_ASSOC) as $row2) { 
     if ($i == 0) { 
      echo '<td>'.$row2['Price'].'</td>'; 
     } 
    } 
?> 
</tr> 
+0

Если вы ожидаете и отвечаете, вы должны разумно отступать от своего кода. – OregonTrail

+1

Не может ли быть, что продукта с этим ID нет в базе данных? Попробуйте повторить значение id и выполнить запрос вручную. – LSerni

+0

Я попробовал запустить запрос в базе данных, и он работает так, чтобы он ничего не делал с запросом –

ответ

2

В вас вы SQL вы пытаетесь выбрать "цена" (ниже "р"), но вы пытаетесь повторить $ row2 [ 'Цена'] (верхний "P"). Попробуйте это или измените p в «Цена» на нижний регистр!

<tr> 
    <td width="160">Price:</td> 
    <?php 
     dbconnect(); 
     $stmt2 = $conn->prepare("SELECT Length, Price FROM Product WHERE ProdID=:id LIMIT 1"); 
     $stmt2->bindParam('id',$id); 
     $stmt2->execute(); 
     $i = 0; 
     foreach ($stmt2->fetchAll(PDO::FETCH_ASSOC) as $row2) { 
      if ($i == 0) { 
       echo '<td>'.$row2['Price'].'</td>'; 
      } 
     } 
    ?> 
</tr> 

Если это не работает, попробуйте ввести SQL-код в PHPMyAdmin. Если данные будут отображаться, ваш SQL будет прав.

+1

спасибо @Mr Bombastic –

+0

@lan Добро пожаловать! –

Смежные вопросы