--- inc/search.php 2001/10/27 16:54:50 1.9 +++ inc/search.php 2001/10/29 14:43:21 1.10 @@ -51,8 +51,16 @@ } else { // Nothing. } - if (!$stype) $stype = 0; + if (!$stype) $stype = false; $tp->assign("stype", $stype); + if (!$stype && !$go) { + reset($fields); + while (list($k, $v) = each($fields)) { + $var = "go_$k"; + global $$var; + if ($$var) $go = true; + } + } if ($go) { if ($stype) { $qry = ""; @@ -92,13 +100,14 @@ $i++; } } else { - $qry_1 = array(); - $qry_2 = array(); reset($fields); while (list($k, $v) = each($fields)) { $field = $k; $var = "query_".$field; global $$var; $query = $$var; + $tp->assign($var, $$var); + $go1 = "go_$field"; + if (!$$var) continue; $q = preg_split('/\s+/', $query); $q2 = array(); $q3 = array(); @@ -115,17 +124,15 @@ if ($is_q2) $q3[$k] = $qq; } global $basic_logic; - if (count($q2) > 0) array_push($qry_1, "(".implode(" ".$basic_logic." ", $q2).")"); - if (count($q3) > 0) array_push($qry_2, "(".implode(" ".$basic_logic." ", $q3).")"); + $qry_1 = implode(" ".$basic_logic." ", $q2); + $qry_2 = implode(" ".$basic_logic." ", $q3); } - $qry_1 = implode(" AND ", $qry_1); - $qry_2 = implode(" AND ", $qry_2); } } $flds = array(); reset($fields); while (list($k, $v) = each($fields)) { - $var = "query_".$v["dbname"]; + $var = "query_$k"; global $$var; array_push($flds, array( "name" => MyEscape($k, true),