Multiple Field Search
Jason,
I have used Data Assist Wizard to create the Results and Search pages. I have added about 15 fields to the Users Registration Profile, which makes up my primary database. These fields have been included in the Search page. I would now like to simplify the Search page by combining fields; that is, use one input search field to search in multiple columns in my database. In this example, I created a new input search field named S_Categories2, which I would like to query three fields: Category1, Category2, and Category 3. The coding for the Category1-2-3 search for the results page is below. The search page is in a following thread. (Eventually I would like also to have a key word search on all of the fields. )
My searches work fine using the fields created by the wizard. The search even works when I change from Edit mode to Value mode, and create a "Yes" filter on one of my fields. I receive a blank result, however, when I add the last key word query of Category1, 2 and 3.
I still wonder whether I should be binding the new filed somewhere, but I cannot seem to find anywhere to do this.
Thanks for you help.
RESULTS PAGE CODE:
<?php require_once('Connections/localhost.php'); ?>
<?php
//WA Database Search Include
require_once("WADbSearch/HelperPHP.php");
?>
<?php
//WA Database Search (Copyright 2005, WebAssist.com)
//Recordset: WADAusers;
//Searchpage: users_Search.php;
//Form: WADASearchForm;
$WADbSearch1_DefaultWhere = "";
if (!session_id()) session_start();
if ((isset($_GET["Search"]) && $_GET["Search"] != "")) {
$WADbSearch1 = new FilterDef;
$WADbSearch1->initializeQueryBuilder("MYSQL","1");
//keyword array declarations
$KeyArr1 = array("Category1", "Category2", "Category3");
//comparison list additions
$WADbSearch1->addComparisonFromEdit("UserCity","S_UserCity","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("UserState","S_UserState","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("UserCountry","S_UserCountry","AND","Includes",0);
$WADbSearch1->addComparison("Role","Yes","AND","=",0);
$WADbSearch1->addComparisonFromEdit("Role2","S_Role2","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("CareerSummary","S_CareerSummary","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Communications","S_Communications","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("AgePref","S_AgePref","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("LifeSummary","S_LifeSummary","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("PersonalExperience","S_PersonalExperience","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Category1","S_Category1","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Category2","S_Category2","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Category3","S_Category3","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("OrgType1","S_OrgType1","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("OrgType2","S_OrgType2","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("OrgType3","S_OrgType3","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("OrgTypesOther","S_OrgTypesOther","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("JobFunct1","S_JobFunct1","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("JobFunct2","S_JobFunct2","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("JobFunct3","S_JobFunct3","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("JobFunctOther","S_JobFunctOther","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("JobTitles","S_JobTitles","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Position1","S_Position1","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Position2","S_Position2","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("Position3","S_Position3","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("MentorTopic1","S_MentorTopic1","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("MentorTopic2","S_MentorTopic2","AND","Includes",0);
$WADbSearch1->addComparisonFromEdit("MentorTopic3","S_MentorTopic3","AND","Includes",0);
$WADbSearch1->keywordComparison($KeyArr1,"S_Categories2","AND","=",",%20","%20","%22","%22",0);
//save the query in a session variable
if (1 == 1) {
$_SESSION["WADbSearch1_users_Results"]=$WADbSearch1->whereClause;
}
}
else {
$WADbSearch1 = new FilterDef;
$WADbSearch1->initializeQueryBuilder("MYSQL","1");
//get the filter definition from a session variable
if (1 == 1) {
if (isset($_SESSION["WADbSearch1_users_Results"]) && $_SESSION["WADbSearch1_users_Results"] != "") {
$WADbSearch1->whereClause = $_SESSION["WADbSearch1_users_Results"];
}
else {
$WADbSearch1->whereClause = $WADbSearch1_DefaultWhere;
}
}
else {
$WADbSearch1->whereClause = $WADbSearch1_DefaultWhere;
}
}
$WADbSearch1->whereClause = str_replace("\\''", "''", $WADbSearch1->whereClause);
$WADbSearch1whereClause = '';
?>
<?php