2014-11-06 72 views
0

我試圖從MySQL數據庫分析一些數據,我有一列調用is_approved和值是01(0否,1代表是)如果值被設置爲0,如何排除數據?

我只想經批准進行呼應一切

我該怎麼做?

<?php 
// Connect to MySQL 
$link = mysql_connect('localhost', 'username', 'password'); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 

// Select the data base 
$db = mysql_select_db('DATABASE', $link); 
if (!$db) { 
    die ('Error selecting database \'DATABASE\' : ' . mysql_error()); 
} 

// Fetch the data 
$query = " 
    SELECT * 
    FROM prayer 
    ORDER BY created_at DESC"; 
$result = mysql_query($query); 

// All good? 
if (!$result) { 
    // Nope 
    $message = 'Invalid query: ' . mysql_error() . "\n"; 
    $message .= 'Whole query: ' . $query; 
    die($message); 
} 

// Print out rows 
while ($row = mysql_fetch_assoc($result)) { 
    //echo json_encode($row); 
    echo 'Name: '.$row['first_name'] . ' ' . $row['last_name'] . ' <br>Gypsy Name: ' .$row['gypsy_name'].'<br>Veetsa: ' .$row['veetsa'].'<br> Location: ' .$row['location'].'<br>' .$row['created_at'].'<br>' .$row['content'] . "<hr>"; 
} 

// Close the connection 
mysql_close($link); 
?> 

的計劃是吐出JSON,所以我可以用它在其他服務器上

+0

其中is_approved = 1? – Steve 2014-11-06 00:42:18

+0

將'WHERE is_approved'添加到查詢中,如果它是一個整數 – 2014-11-06 00:43:06

回答

2

只是一個WHERE條款添加到您的查詢:

SELECT * 
    FROM prayer 
    WHERE is_approved = 1 
    ORDER BY created_at DESC 
+0

+1只是要說,但OP的良好手中;) – 2014-11-06 00:42:21

1

你可以在MySQL做到這一點查詢,但你也可以通過使用if ($row['is_approved'] == 1) {這樣的PHP邏輯過濾數據:

// Print out rows 
while ($row = mysql_fetch_assoc($result)) { 
    if ($row['is_approved'] == 1) { 
    echo 'Name: '.$row['first_name'] . ' ' . $row['last_name'] . ' <br>Gypsy Name: ' .$row['gypsy_name'].'<br>Veetsa: ' .$row['veetsa'].'<br> Location: ' .$row['location'].'<br>' .$row['created_at'].'<br>' .$row['content'] . "<hr>"; 
    } 
} 

目前還不清楚你的代碼的更大目標是什麼,但這樣做的好處是你可以在is_approved之間快速切換狀態或設置某種排序邏輯來處理is_approved

否則,MySQL的查詢確實是效率更高的& clean。

相關問題