我已經轉換到MySQL Access數據庫。我有一個表,聯繫人,字段爲'EmailAddress','HideEmailAddress','FaxNumber','HideFaxNumber','PhoneNumber'和'HidePhoneNumber'。隱藏字段都是複選框,因此值爲1或0,其中1爲真。比較值給予不同的輸出
無論是在我的MySQL Select語句還是在我的PHP查詢中,我都需要能夠在隱藏字段的值爲1時不顯示信息。另外,三個字段中只有一個字段被標記爲隱藏,所以我不能做一條毯子「如果其中任何一個都隱藏了所有這些」。我需要將查詢輸出到網頁,並根據每列的隱藏字段的值顯示或隱藏上面的三個字段。我的SELECT語句檢索所有六個值,PHP將它變成一個數組,但我不認爲與陣列相比任何事情都會在這裏幫助。
我只是不知道我應該在這裏做。我一直在尋找一對夫婦現在天並沒有什麼的似乎來接近我所需要的。我有一個非常臨時的if-elseif的,否則在我的PHP循環中運行,以得到它在截止日期前完成,但是這需要9條或12個不同的語句,我敢肯定有一個更好的方式來做到這一點。
這裏是我的代碼。我已經把它折了很多從原來的查詢,但該查詢沒有工作,所以如果這裏有錯別字,它來自於砍伐。我只是不知道如何根據另一個字段的值來抑制字段。這也是爲什麼我在SELECT語句中有兩個AS語句 - 在原始查詢中,有來自五個不同表的信息,並且在它們中都有「FaxNumber」和「EmailAddress」。爲了萬一它改變了事情,我離開了AS。
<?php
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME) or die('Error connecting to MySQL server.');
$query = 'SELECT Contact.CompanyID, Contact.WebContact, Contact.FirstName, Contact.LastName, Contact.WorkPhone, Contact.HidePhoneNumber, Contact.FaxNumber AS ConFaxNumber, Contact.HideFaxNumber, Contact.EmailAddress AS ConEmailAddress, Contact.HideEmailAddress FROM Contact WHERE TDAT_Contact.WebContact = "1"';
mysqli_query($dbc, $query);
if($r = mysqli_query($dbc, $query)) {
while ($row = mysqli_fetch_array($r)) {
if(($row['HidePhoneNumber'] == 1) && ($row['HideFaxNumber'] == 1)) {
echo '<hr><div align="query"><span class="strong">Contact:</span> ' . $row['FirstName'] . ' ' . $row['LastName'] . '<br /><br /><span class="strong">Direct Email Address: </span>' . $row['ConEmailAddress'] . '</div>';
} elseif($row['HidePhoneNumber'] == 0) && ($row['HideFaxNumber'] == 0) {
echo '<hr><div align="query"><span class="strong">Contact:</span> ' . $row['FirstName'] . ' ' . $row['LastName'] . '<br /><span class="strong">Direct Telephone: </span>' . $row['WorkPhone'] . '<br /><span class="strong">Direct Fax: </span>' . $row['ConFaxNumber'] . '<br /><span class="strong">Direct Email Address: </span>' . $row['ConEmailAddress'] . '</div>';}
}
...
else { // Query didn't run.
echo '<p style="color: red;">Could not retrieve the data because:<br />' . mysqli_error($dbc) . '.</p><p>The query being run was: ' . $query . '</p>';
}
}}
mysqli_close($dbc); // Close the connection.
?>
有一個解析的錯誤(第11行)如果你的問題不是這裏提供的,我們不能幫你解決問題 – MichaelRushton 2013-03-27 18:50:11
看起來像我放棄了該行中的括號。謝謝你的收穫。 – user2216934 2013-03-27 18:56:37