我有一個查詢返回產品列表。該表不能更改爲包含另一列(如二進制include_in_dropdown
)。假設確實有一些產品我不想包含在我填充這些數據的下拉列表中(例如,因爲它不經常訂購,或者對於網頁上的訂單表單的用戶而言太過深奧且不直觀)不包含在我填充的下拉列表中的最佳實踐方式是什麼?從PHP中的sql查詢過濾不希望的結果
while ($row = mssql_fetch_assoc($result)){
//a switch with a bunch of cases statically
//listing the products I don't want to list
//switch($row[$col_val]){
//case: "Outsource"
//break 1;
//case: "Shipping"
//break 1;
//}
//some other way that is more maintainable(??)
echo "<tr>";
foreach ($column_names as $col_key => $col_val){
echo "<td>";
echo $row[$col_val];
echo "</td>";
}
echo "</tr>";
$count ++;
}
我有點明白這是一個令人難以置信的不理想的情況,這可能是唯一的出路,但也許還有比這是一英里長switch語句更好的方法。對任何想法感興趣。
將其過濾到數據庫中以開始?除非過濾邏輯會使查詢變得如此龐大/醜陋,否則它將無法維護,所以通常不要發送來自db-> php的數據,以便稍後將其丟棄。 – 2013-02-11 19:56:06
@MarcB我會看看這是否是一個選項。也許我可以將其中一個未使用的字段設置爲專門針對我的標誌。你可以提交這個答案,所以我可以給你支票嗎?謝謝! – 1252748 2013-02-11 20:03:52