web-dev-qa-db-fra.com

Comment spécifier plusieurs colonnes de recherche pour la recherche par table de liste wp

J'ai une recherche de travail pour un wp_list_table créé. Mais j'aime savoir comment je peux chercher dans plusieurs colonnes.

Ma configuration actuelle de ma recherche de travail dans une classe de visiteur

//search something
$searchcol= array(
    'visitorCompany',
    'visitorName',
    'visitorEmail'
    );  
$search = !empty($_REQUEST["s"]) ?  mysql_real_escape_string($_REQUEST["s"]) : '';
//$search = preg_replace( "^$\**(.*)\**$?#", "*$1*", $_REQUEST["s"] );
if(!empty($_REQUEST["s"])) {$query .= ' WHERE '.$searchcol[1].' LIKE "%'.$search.'%"';}

ici, je viens de chercher dans la colonne visitorName, mais j’aimerais utiliser le $searchcol pour effectuer une recherche.

Une boucle foreach

foreach( $searchcol as $col) {
    if(!empty($_REQUEST["s"])) {$query .= ' WHERE '.$col.' LIKE "%'.$search.'%"';}
}

n'a pas fonctionné

2
alex

Ok je vois mon erreur

J'ai fait cette solution de travail ne semble pas jolie

$i =0;
        foreach( $searchcol as $col) {
            if($i==0) {
                $sqlterm = 'WHERE';
            } else {
                $sqlterm = 'OR';
            }
            if(!empty($_REQUEST["s"])) {$query .=  ' '.$sqlterm.' '.$col.' LIKE "%'.$search.'%"';}
            $i++;
        }
1
alex