下面是我的代碼,我試圖通過它從SQL數據庫中的下拉框中獲得某些值。我也試圖在加載到下拉框之前排除一些數據。排除數組不能在PHP中工作
在我的代碼$excld[]
工作正常,並且下拉列表填充時不顯示預期的零值,但我希望通過$exclude=$rec['chkNum'];
排除的值不起作用,否則我不希望處於下拉列表中的值仍然顯示。有人能告訴我這種方法有什麼問題嗎? 謝謝。
$exclude = array();
$query = "SELECT * FROM invoentry WHERE dist_inv='$distUsr'";
$runx=mysqli_query($db,$query) or die ("SQL Error");
$norx=mysqli_num_rows($runx);
while ($rec = mysqli_fetch_array($runx))
{
$exclude[] = $rec['chkNum']; $excld[] = '0';
}
$SQLx="SELECT * FROM newchk WHERE dist_chk='$distUsr'";
$runx=mysqli_query($db,$SQLx) or die ("SQL Error");
$norx=mysqli_num_rows($runx);
while ($rec = mysqli_fetch_array($runx))
{
if($rec['sbstart'] != '0' & $rec['sbend'] != '0') {
for($i=$rec['sbstart']; $i<=$rec['sbend']; $i++)
{
if (!in_array($i, $exclude, $excld))
{
echo "<option id='options' value='$i'>$i<br></option>";
}
} }
if($rec['gwstart'] != '0' & $rec['gwend'] != '0') {
for($i=$rec['gwstart']; $i<=$rec['gwend']; $i++)
{
if (!in_array($i, $exclude, $excld))
{
echo "<option id='options' value='$i'>$i<br></option>";
}
} }
}
編輯:
數據庫結構如下; 數據庫名稱:regional_data 在同一個數據庫invoentry和newchk兩個表
invoentry:
usr_inv dist_inv chkNum InvoNum
---------------------------------
John Guardian 300455 457gXT
newchk:
usr_chk dist_chk sbstart sbend totsb gwstart gwend totgw
----------------------------------------------------------
John Guardian 300400 300550 151 300 310 10
你能編輯您的問題向我們展示了'invoentry'和'newchk'表的結構?這個問題可能有一個純粹的SQL解決方案。 – Charles
@Charles:您好,我試圖更新數據庫表結構與標題和示例數據集。希望這個澄清,並請容忍與我,如果看起來不是那麼好。 –