Всем огромное спасибо за помощь.
Век живи, век учись.
Runet4ik пишет:
$arr = array('word_1', 'word_2', 'word_n');
foreach($arr as $val){
if(preg_match("#".preg_quote($val)."#", $value)) необходимые действия
}
Что типа этого....
.
В этом случае получается 'word_1' или 'word_2' или 'word_n', а нужно
'word_1' и 'word_2' и 'word_n'
Есть 2 признака по 4 чекбокса на каждый признак в форме Х.
Нужно сформировать запрос в MySQL типа :
(p1_1 = '1' OR p1_2 = '1' OR p1_3 = '1' OR p1_4 = '1' )
AND (p2_1 = '1' OR p2_2 = '1' OR p2_3 = '1' OR p2_4 = '1' )
и соответственно нужно сформировать переменные p1 и p2
типа : p1 = "p1_1 = '1' OR p1_2 = '1' OR p1_3 = '1' OR p1_4 = '1' "
p2 = "p2_1 = '1' OR p2_2 = '1' OR p2_3 = '1' OR p2_4 = '1' "
проверки которые я "напрограммировал" смотри в первом посте.
Меня, например, смущает тот факт, что при сформированной переменной проверки идут дальше, а там 15 проверок.
if(isset($ident_10) AND isset($ident_11) AND isset($ident_12) AND isset($ident_13)) {$ident_season = $ident_10." OR ".$ident_11." OR ".$ident_12." OR ".$ident_13;}
if(isset($ident_10) AND empty($ident_11) AND empty($ident_12) AND empty($ident_13)) {$ident_season = $ident_10;}
if(empty($ident_10) AND isset($ident_11) AND empty($ident_12) AND empty($ident_13)) {$ident_season = $ident_11;}
if(empty($ident_10) AND empty($ident_11) AND isset($ident_12) AND empty($ident_13)) {$ident_season = $ident_12;}
if(empty($ident_10) AND empty($ident_11) AND empty($ident_12) AND isset($ident_13)) {$ident_season = $ident_13;}
if(isset($ident_10) AND isset($ident_11) AND empty($ident_12) AND empty($ident_13)) {$ident_season = $ident_10." OR ".$ident_11;}
if(isset($ident_10) AND empty($ident_11) AND isset($ident_12) AND empty($ident_13)) {$ident_season = $ident_10." OR ".$ident_12;}
if(isset($ident_10) AND empty($ident_11) AND empty($ident_12) AND isset($ident_13)) {$ident_season = $ident_10." OR ".$ident_13;}
if(empty($ident_10) AND isset($ident_11) AND isset($ident_12) AND empty($ident_13)) {$ident_season = $ident_11." OR ".$ident_12;}
if(empty($ident_10) AND isset($ident_11) AND empty($ident_12) AND isset($ident_13)) {$ident_season = $ident_11." OR ".$ident_13;}
if(empty($ident_10) AND empty($ident_11) AND isset($ident_12) AND isset($ident_13)) {$ident_season = $ident_12." OR ".$ident_13;}
if(empty($ident_10) AND isset($ident_11) AND isset($ident_12) AND isset($ident_13)) {$ident_season = $ident_11." OR ".$ident_12." OR ".$ident_13;}
if(isset($ident_10) AND empty($ident_11) AND isset($ident_12) AND isset($ident_13)) {$ident_season = $ident_10." OR ".$ident_12." OR ".$ident_13;}
if(isset($ident_10) AND isset($ident_11) AND empty($ident_12) AND isset($ident_13)) {$ident_season = $ident_10." OR ".$ident_11." OR ".$ident_13;}
if(isset($ident_10) AND isset($ident_11) AND isset($ident_12) AND empty($ident_13)) {$ident_season = $ident_10." OR ".$ident_11." OR ".$ident_12;}
Как вариант
SELECT
fakt.id,
fakt.name FROM fakt
LEFT JOIN fakt_cnt ON fakt.id = fakt_cnt.fakt_id
GROUP BY fakt_cnt.fakt_id
ORDER BY SUM(fakt_cnt.cnt) DESC
HAVING SUM(fakt_cnt.cnt) =0