紛らわしいタイトルについて申し訳ありませんが、私は初心者であり、私の問題を何と呼ぶべきかわかりません。私はビジネスリスティングWebサイトを作成するために構築(well..trying)しており、テーブルから結果を取得するこの検索スクリプトを見つけました。そこで、これを貼り付けて試してみましたが、一度に1つのフィールドしか検索できず、2つのフィールドを同時に検索することはできません。フィールド「company_name」からのデータのみが再調整されます。ただし、これを柔軟にして、フィールド名「categories」から検索するように追加する必要があるため、要するに、「company_name」と「categories」フィールドの2つの行を検索するためにPHPが必要です。
これがスクリプトですが、構文を追加する方法がわかりません。
       $keywords = preg_split('/[\s]+/',$keywords); 
       $total_keywords = count($keywords); 
         foreach($keywords as $key=>$keyword) {
        $where .= "`company_name`  LIKE  '%$keyword%'   ";
        if($key != ($total_keywords - 1)) {
        $where .= " AND ";
    }
問題はここにあります:$where .= "company_nameLIKE  '%$keyword%'   ";
ここでスクリプト全体を見る必要がある場合は、ここにあります。
        function search_clients($keywords){
$returned_results = array();
$where = "";
$keywords = preg_split('/[\s]+/',$keywords);    
$total_keywords = count($keywords); 
foreach($keywords as $key=>$keyword) {
    $where .= "`company_name`  LIKE  '%$keyword%'   ";
    if($key != ($total_keywords - 1)) {
        $where .= " AND ";
    }
}
$results = "SELECT `company_name`, LEFT(`company_details`,150)
    as `company_details`, `category` FROM `clients`
    WHERE $where";
$results_num = ($results = mysql_query($results)) ?  mysql_num_rows($results) : 0 ;
if($results_num === 0) {
    return false; 
} else {
    while($results_row = mysql_fetch_assoc($results)) {
    $returned_results[] = array(
    'company_name'  => $results_row['company_name'],
    'company_details'  => $results_row['company_details'],
    );
}
return $returned_results;
}
}