[英]If selected option value is empty select all values in column
I am trying to get all values from column when color selected option value is empty. 当颜色选择的选项值为空时,我试图从列中获取所有值。 I have created form, and dropdown menu looks like
我已经创建了表格,并且下拉菜单看起来像
Colors 色彩
<option value="">
<option value="61">8019 - Smeđa
<option value="28">8017 - Smedja svijetla
<option value="27">8004 - Cigla crvena
<option value="26">8003 - Boja bakra
dimensions 尺寸
<?php
while($row = mysqli_fetch_array($dimensions))
{
echo '<option value= "'.$row['ArtOpis'].'">'.$row['ArtOpis'].'</option>';
}
?>
</select>
If I achoose dimension and leave color values empty, then all colors from selected menu should be printed. 如果我选择尺寸并将颜色值留空,则应打印所选菜单中的所有颜色。 For ex.
对于前。 if a want srew 4,4x20 mm dimension, if I dont choose color, leave it blank, I want to print this screw in all colors.
如果想罗丁4,4x20毫米的尺寸,如果我不选择颜色,让它空白,我想在所有的颜色打印此螺丝。 vijci_search2.php
vijci_search2.php
$col=$_POST['color']
$dimen=$_POST['dimensions'];
$sql_color = (!empty($col)) ? "jos_ib_boje.BojaId=" . $col . " AND " : '';
Query
$result = mysqli_query($con, "SELECT jos_ib_artikli.ArtSifra, jos_ib_artikli.ArtNaziv, jos_ib_artikli.ArtOpis,jos_ib_artikli.ArtKategorija, jos_ib_artikli.ArtBoja, jos_ib_jedmj.JmNaziv, jos_ib_pakovanja.PakOznaka,
jos_ib_artikli.ArtStanjeSa, jos_ib_artikli.ArtStanjeBL, jos_ib_boje.BojaId, jos_ib_boje.BojaNaziv
FROM jos_ib_artikli
INNER JOIN jos_ib_jedmj ON jos_ib_artikli.ArtMjera = jos_ib_jedmj.JmId
INNER JOIN jos_ib_pakovanja ON jos_ib_artikli.ArtPakovanje = jos_ib_pakovanja.PakId
INNER JOIN jos_ib_boje ON jos_ib_artikli.ArtBoja = jos_ib_boje.BojaId
WHERE jos_ib_artikli.ArtOpis LIKE '$dimen' AND jos_ib_artikli.ArtBoja='$sql_color' AND jos_ib_artikli.ArtStanjeSa>0");
try this 尝试这个
<?php
$col=$_POST['color']
$dimen=$_POST['dimensions'];
$query .= "SELECT jos_ib_artikli.ArtSifra, jos_ib_artikli.ArtNaziv, jos_ib_artikli.ArtOpis,jos_ib_artikli.ArtKategorija, jos_ib_artikli.ArtBoja, jos_ib_jedmj.JmNaziv, jos_ib_pakovanja.PakOznaka,
jos_ib_artikli.ArtStanjeSa, jos_ib_artikli.ArtStanjeBL, jos_ib_boje.BojaId, jos_ib_boje.BojaNaziv
FROM jos_ib_artikli
INNER JOIN jos_ib_jedmj ON jos_ib_artikli.ArtMjera = jos_ib_jedmj.JmId
INNER JOIN jos_ib_pakovanja ON jos_ib_artikli.ArtPakovanje = jos_ib_pakovanja.PakId
INNER JOIN jos_ib_boje ON jos_ib_artikli.ArtBoja = jos_ib_boje.BojaId
WHERE jos_ib_artikli.ArtOpis LIKE '$dimen'";
if($col != '' && !empty($col)) { $query .= " AND jos_ib_boje.BojaId=" . $col ."";}
$query .= " AND jos_ib_artikli.ArtBoja='$sql_color' AND jos_ib_artikli.ArtStanjeSa>0";
$result = mysqli_query($con, $query);
what about this variable ($sql_color) its not defined so first defined it and then run query?? 该变量($ sql_color)的定义如何呢?首先定义它,然后运行查询?
I have solved the problem. 我已经解决了问题。 The mistake was here.
错误就在这里。 //bad $sql_color = (!empty($col)) ?
//坏的$ sql_color =(!empty($ col))? "jos_ib_boje.BojaId=" .
“ jos_ib_boje.BojaId =”。 $col .
$ col。 " AND " : '';
“ AND”:“;
//good $sql_color = (!empty($col)) ? //好$ sql_color =(!empty($ col))? " AND jos_ib_artikli.ArtBoja=" .
“ AND jos_ib_artikli.ArtBoja =”。 $color .
$ color。 " " : '';
“”:'';
$sql = "SELECT jos_ib_artikli.ArtSifra, jos_ib_artikli.ArtNaziv, jos_ib_artikli.ArtOpis,jos_ib_artikli.ArtKategorija, jos_ib_artikli.ArtBoja, jos_ib_jedmj.JmNaziv, jos_ib_pakovanja.PakOznaka, jos_ib_artikli.ArtStanjeSa, jos_ib_artikli.ArtStanjeBL, jos_ib_boje.BojaId, jos_ib_boje.BojaNaziv $的SQL =“SELECT jos_ib_artikli.ArtSifra,jos_ib_artikli.ArtNaziv,jos_ib_artikli.ArtOpis,jos_ib_artikli.ArtKategorija,jos_ib_artikli.ArtBoja,jos_ib_jedmj.JmNaziv,jos_ib_pakovanja.PakOznaka,jos_ib_artikli.ArtStanjeSa,jos_ib_artikli.ArtStanjeBL,jos_ib_boje.BojaId,jos_ib_boje.BojaNaziv
FROM jos_ib_artikli
INNER JOIN jos_ib_jedmj ON jos_ib_artikli.ArtMjera = jos_ib_jedmj.JmId
INNER JOIN jos_ib_pakovanja ON jos_ib_artikli.ArtPakovanje = jos_ib_pakovanja.PakId
INNER JOIN jos_ib_boje ON jos_ib_artikli.ArtBoja = jos_ib_boje.BojaId
WHERE jos_ib_artikli.ArtOpis LIKE '$dimenzija' ". $sql_bojalica . " AND ArtStanjeSA>0 " ;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.