아래 코드를 통해 SQL 데이터베이스에서 드롭 다운 상자에 특정 값을 가져 오려고합니다. 또한 드롭 다운 상자에로드하기 전에 일부 데이터를 제외하려고합니다.exclude 배열이 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>";
}
} }
}
EDIT 다음과 같이
데이터베이스 구조이고; 데이터베이스 이름 : 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 : 안녕하세요, 저는 헤더와 샘플 데이터 세트로 데이터베이스 테이블 구조를 업데이트하려고했습니다. 외모가 그렇게 크지 않다면이 점이 명확 해지기를 바랍니다. –