2016-04-22 73 views
-2

這看起來可能很愚蠢,但我不知道如何做這個簡單的事情,儘管有很多谷歌搜索。如何使用PHP mysql(PDO)回顯查詢結果

我有全功能的PHP腳本,查詢mysql數據庫檢查布爾值。我的腳本包含代碼:

$sql = "SELECT truefalse FROM mydb WHERE bilbobaggins=:bilbobaggins"; 

$query = $db->prepare($sql); 

try { 

$query->execute(array(

     ':bilbobaggins' => $bilbobaggins 

)); 

} catch (Exception $e) { 

echo "Query failed. " . ($e->getMessage()); 
$db = null; 
die; 

} 

所有我想要做的是有查詢的結果呼應從腳本回來,使得例如,如果我把

http://www.myurl.com/myscript.php?bilbobaggins=user32984329842 

成瀏覽器,它將以文本格式返回1或0。

我懷疑我需要更改線路:

$query->execute(array(

喜歡的東西:

print $query->execute(array(

但是,這並不工作。

任何幫助表示讚賞。謝謝。

+0

我們需要看到比更多的代碼,以及作爲解釋什麼是或不在工作。 –

+0

您需要獲取結果。 – chris85

+0

爲什麼試圖捕捉異常,而不是讓它自然失敗? – user1032531

回答

-1

我固定它通過添加以下內容:

while ($row = $query->fetch(PDO::FETCH_ASSOC)) 
{ 
echo $row['truefalse']; 
} 

:)

+1

這段代碼工作正常,我不明白downvotes。然而,OP還需要使用反引號來轉義key,因爲它是MySQL中的一個保留字。 ''sql =「SELECT truefalse FROM mydb WHERE'key' =:key」;'' –

+0

我編輯了原始帖子來解決這個問題。 –

0

試着像...

<?php 
$sql = "SELECT truefalse FROM mydb WHERE `key`=:key"; 
$stmt = $db->prepare($sql); 
$stmt->execute(array('key' => $key)); 
header('Content-Type: text/plain;'); 
echo($stmt->fetchColumn()); 
+0

'key'是MySQL中的一個保留字。您需要用反引號將其轉義。 ''sql =「SELECT truefalse FROM mydb WHERE'key' =:key」;'' –