我有表MYTABLE包含字段:ID,PASSWORD,COL1,COL2,COL3,DATE 我想獲取並顯示HTML表中的所有記錄,但跳過ID和密碼字段... 我使用下面的代碼是不工作:PHP MySQL如何跳過顯示字段
$query = "SELECT * FROM MYTABLE WHERE 1";
$results = mysql_query($query, $conn) or die(mysql_error());
echo "<tr>";
while ($r = mysql_fetch_assoc($results)) {
foreach ($r as $item) {
// let's not display ID and password
if ($r == 'ID' || $r == 'PASSWORD') continue; // this is the line that I want to figure out
echo "<td>$item</td>";
} // end for loop
} // end while
unset($item);
echo "</tr>";
顯然有不止1點的方式來做到這一點,比如我可以用替換foreach循環的循環:
for ($i=0;$i<=6;$i++) {
if ($i == 0 || $i == 1) continue;
echo "<td>$r[$i]</td>";
} // end for
這會跳過ID和PASSWOR D字段,但我不想使用它,因爲我在多個表上運行代碼(表名是從html select標記中提取的),並且這些表可能沒有相同數量的字段/列(但它們將始終有ID和PASSWORD)。我也可以用SQL語句(我不想),但是然後我將不得不查詢到一個臨時工,刪除ID,PASSWORD列,然後從臨時表中獲取。 (順便說一下有沒有令人信服的理由,爲什麼我其實應該與SQL Rathen市的比PHP做呢?)
爲什麼你就不能使用 「從MYTABLE選擇COL1,COL2,COL3,DATE」? – Akhil 2014-10-09 12:24:23
因爲他很傷心:「這會跳過ID和PASSWORD字段,但我不想使用它,因爲我在多個表上運行代碼(表名是從html選擇標記中提取的)」 – vaso123 2014-10-09 12:27:27