我想创建多个搜索,其中声明$ where_search是来自帖子表单的多个条件。 但当我使用此代码“.where_search”时,stil错误。在mysql_num_rows用于分页的条件
$tampil2 = mysql_query("SELECT * FROM bb where ".$where_search." and kd_kelompok='2' and kd_komoditi='11' and nm_sebutan IS NOT NULL " );
这是完整的代码。
$where_search = "kd_pok='2' and kd_komoditi='11' ";
if (isset($_POST['lakpus']))
{
if (empty($_POST['lakpus']))
{
}
else
{
if (empty($where_search))
{
$where_search .= "lakpus = '$lakpus' ";
}
else
{
$where_search .= "AND lakpus = '$lakpus' ";
}
}
}
if (isset($_POST['kd_por']))
{
$kd_por = $_POST['kd_por'] ;
if (empty($_POST['kd_por']))
{
}
else
{
if (empty($where_search))
{
$where_search .= "kd_por = '$kd_por' ";
}
else
{
$where_search .= "AND tab1.kd_por = '$kd_por' ";
}
}
}
$max=15;
$tampil2 = mysql_query("SELECT * FROM bb where ".$where_search." and kd_kelompok='2' and kd_komoditi='11' and nm_sebutan IS NOT NULL " );
$jml = mysql_num_rows($tampil2);
$jmlhal = ceil($jml/$max);
答案 0 :(得分:2)
也许你的错误就在这里:
$where_search .= "AND tab1.kd_por = '$kd_por' ";
因为您没有声明“tab1”。尝试更改为:
$where_search .= "AND kd_por = '$kd_por' ";
编辑1
您没有从$lakpus
恢复var $_POST
并使用它。以下是您必须更新的代码的一部分。
...
else
{
$lakpus = $_POST['lakpus'];
if (empty($where_search))
{
$where_search .= "lakpus = '$lakpus' ";
}
...
编辑2
正如我在评论中所说,尝试在mysql_query()之后调用mysql_num_rows(),如下所示。
$qry = "SELECT * FROM bb where ".$where_search;
$res = mysql_query($qry);
$num = mysql_num_rows($res);
$row = mysql_fetch_array($res);