2011-04-03 90 views
0

的PHP/SQL調用此:的Sql未能調用領域正確

<?php 
// Filter our input. 
$pID = filter_input(INPUT_GET, 'pID', FILTER_SANITIZE_NUMBER_INT); 
if(!$pID) { 
    echo "No pID specified."; 
    exit; 
} 
$username = "##"; 
$password = "####"; 
$pdo = new PDO('mysql:host=localhost;dbname=###', $username, $password); 
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$sth = $pdo->prepare(' 
SELECT name, lname, fname, picpath, email 
FROM Department, Professor 
WHERE pID = ? 

    ;'); 
$sth->execute(array(
    $pID 
)); 

其他PHP代碼:

if($sth->rowCount() > 0) { 
         $row = $sth->fetch(PDO::FETCH_ASSOC);     
    <div class='professor_pic'> 
          <img src='{$row['picpath']}' /> 
         </div><!-- /professor_pic --> 
         <div class='professor_desc'> 
          <span class='one' style='float:left; padding:5px 0 0 5px;'><strong>Department:</strong> {$row['name']} </span><br> 

    } else { 
         echo "No results."; 
        } 
        unset($sth); 
        ?> 

department table professor table

爲什麼的arent這兩個字段'picpath'和'name'被拉? ?它沒有拋出任何錯誤。以上是兩個數據庫字段:

+0

您的「其他代碼」混合了PHP和HTML,因此無效。此外,你的問題沒有意義。 – 2011-04-03 21:58:10

+0

爲什麼你有「從部門,教授」? – Khez 2011-04-03 21:59:06

+0

您是否打擾檢查查詢是否成功? – 2011-04-03 22:07:56

回答

0

我懷疑你的初始SQL查詢有很多錯誤。我建議你閱讀MySQL JOIN。考慮到我理解該查詢應該如何運行,請試試這個:

SELECT d.name, p.lname, p.fname, p.picpath, p.email FROM Professor p JOIN Department d ON d.dID = p.dID WHERE p.pID = ?