close ad
 
Important WebAssist Announcement
open ad
View Menu

Technical Support Forums

Free, outstanding support from WebAssist and your colleagues

rating

Help with a custom search

Thread began 7/30/2013 8:28 am by iainmacdonald331081 | Last modified 8/01/2013 12:00 pm by iainmacdonald331081 | 2391 views | 16 replies |

iainmacdonald331081

Help with a custom search

I basically have a simple enough WA search working, and am trying to add second part to the search using a list of keywords.

Also have a search just using the keyword part working, but can't quite get both parts working in the same search form.

I don't think its far off though - think its juts a case of getting the SQL query right, and also the search comparison in the results page.

Assuming its not too complicated, any help with this much appreciated.

Details to follow below...

Sign in to reply to this post

Jason ByrnesWebAssist

1) the code for the checkboxes:

echo "<input type=\"checkbox\" class=\"tickbox_".$row_type."\"";
if (in_array($keyword['ProfileID'],$profilekeywords)) { echo " checked"; }
echo " name=\"ckbox[".$keyword['ProfileID']."]\" id=\"ckbox[".$keyword['ProfileID']."]\">";

has a couple prolems:

a) The id does not need to be in the checkbox name.
b) you dont have a value.

try using:
echo "<input type=\"checkbox\" class=\"tickbox_".$row_type."\"";
if (in_array($keyword['ProfileID'],$profilekeywords)) { echo " checked"; }
echo " name=\"ckbox[]\" id=\"ckbox[]\" value=\"".$keyword['ProfileID']."\">";

2) on the bindings panel, click the plus button, select URL Variable, name the URL Variable:
ckbox

edit the data assist search behavior and add a new critiera.

set the criteria type to key word.

for the keyword or, use a coma followd by a space:
", " <- without quotes

for the keyword and enter:
AND

no spaces

For the value, click the lightning bolt icon and select the checkbox url variable. also add the following code at line 1 of the results page:

php:
<?php

if($_SERVER["REQUEST_METHOD"] == "GET")     {
    foreach(
$_GET as $key => $val) {
        if(
is_array($_GET[$key])) $_GET[$key] = implode(", "$_GET[$key]);
    }
}
?>
Sign in to reply to this post

iainmacdonald331081

Thanks Jason.

I've made those changes, but wasn't sure about a couple of things.

For the ckbox criteria I made the Keyword AND value "AND" and the Keyword OR value ", "

But what should the separator and column have been? I just left them as they were, which was AND and RevisionID.

What I had before was only searching records which had at least one profile added, whereas now it is searching all records again, so that's definitely right.

But if you search on the checkboxes the results are looking a bit random.

I've attached the updated files.

Sign in to reply to this post

Jason ByrnesWebAssist

the column should be the column you want to search on and the separator can be left as is.

Sign in to reply to this post

iainmacdonald331081

Ah, yes. Changed the SQL query back to what I had tried before, i.e.:

SELECT DISTINCT revision.RevisionID, Project_Name FROM revision INNER JOIN revisionProfiles ON revision.RevisionID = revisionProfiles.RevisionID

And set the column to ProfileID.

Which from a couple of tests looks like its all working as I'd expect.

Thanks again for helping out with that.

Sign in to reply to this post

iainmacdonald331081

Actually, not quite - its returning results where any of the checkboxes are a match, but should be where all of the checkboxes match.

For example, if you search using the checkboxes Road Atlas Ireland and GB / Ireland Town Plans it should only return results where both of those are a match,

The separator in the behaviour is AND, so not sure how to change that?

Sign in to reply to this post

Jason ByrnesWebAssist

in the keyword criteria settings, change the OR Seperator to "OR" and the AND Seperator to ", "

Sign in to reply to this post

iainmacdonald331081

Thanks Jason - thinking about it, there will probably be times when both would be useful, eg to search for all the transport related projects, so I'll probably use two search forms.

Sign in to reply to this post

iainmacdonald331081

Only got round to making that change today but it didn't seem to work.

I've added links to the site for the search that returns with any checked, which works, and this one which should return results with all the checkboxes matching.

If you just search without entering anything, it returns all the records with at least one profile keyword.

If you search by checking one checkbox, it returns records with that keyword.

If you search by checking more than one checkbox, it draws a blank.

To test, I've created four test records with the keyword in brackets:

- Transport Interchange (Railway, Light Railway, Metro)
- Railway Scheme (Railway)
- Light Railway Scheme (Light Railway)
- Metro Scheme (Metro)

Checking all three checkboxes Railway, Light Railway and Metro in the checkboxes ANY search correctly returns all four records.

Checking all three checkboxes in the checkboxes ALL search should just return the Transport Interchange scheme, but draws a blank.

Have attached the updated files.

Sign in to reply to this post

Jason ByrnesWebAssist

I'll need to troubleshoot directly, see the private message section.

Sign in to reply to this post
loading

Build websites with a little help from your friends

Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.

Build websites from already-built web applications

These out-of-the-box solutions provide you proven, tested applications that can be up and running now.  Build a store, a gallery, or a web-based email solution.

Want your website pre-built and hosted?

Close Windowclose

Rate your experience or provide feedback on this page

Account or customer service questions?
Please user our contact form.

Need technical support?
Please visit support to ask a question

Content

rating

Layout

rating

Ease of use

rating

security code refresh image

We do not respond to comments submitted from this page directly, but we do read and analyze any feedback and will use it to help make your experience better in the future.

Close Windowclose

We were unable to retrieve the attached file

Close Windowclose

Attach and remove files

add attachmentAdd attachment
Close Windowclose

Enter the URL you would like to link to in your post

Close Windowclose

This is how you use right click RTF editing

Enable right click RTF editing option allows you to add html markup into your tutorial such as images, bulleted lists, files and more...

-- click to close --

Uploading file...