Forums / Developer / customizing the search form

customizing the search form

Author Message

justin kazadi

Friday 08 August 2008 3:01:50 am

hello all,
i want to know how can i modified the default search from by adding for exemple two fields .

i wanna have samethings like this :

<form action={'/content/search'|ezurl()} method='post'>
<label>Country:</label>

<select>
<option name="countries">RDC</option>
<option>BELGIQUE</option>
<option>NORVEGE</option>
</select>

<label>Town:</label>

<select name="towns">
<option>kinshasa</option>
<option>bruxelles</option>
<option>paris</option>
</select>
<label>Tag:</label>
<input type="text" name="SearchText" />
<input type="submit" name="SearchButton" value="search" />
</form>

i have try this but it didn 't work.
i need same suggestion.
thanks in advance

The theory is when we know everything and nothing works.
The practice is when everything works and nobody knows why.
If the practice and theory are met, nothing works and we do not know why.

Albert Einstein

Gabriel Finkelstein

Monday 11 August 2008 2:11:57 pm

I think you should better use a filter rather than a search.

Something like:

<form action='some_url' method='get'>

<label>Country:</label>
<select name="country">
<option value="xx">RDC</option>
<option value="xx">BELGIQUE</option>
<option value="xx">NORVEGE</option>
</select>

<label>Town:</label>
<select name="town">
<option value="xx">kinshasa</option>
<option value="xx">bruxelles</option>
<option value="xx">paris</option>
</select>

<label>Tag:</label>
<input type="text" name="SearchText" />
<input type="submit" name="SearchButton" value="search" />
</form>

Where:
some_url = url to a dummy node
xx = id of the town/country for the datatype you are using (if you use objectrelations, then xx = object id)

And inside the template for some_url:

{def $results=fetch(content, tree, hash( parent_node_id, 2,
                                                         attribute_filter, array('and',
                                                                   array('myclass/country','=',$view_parameters.country),
                                                                   array('myclass/town','=',$view_parameters.town),
                                                                 array('myclass/body','like',concat('*',$view_parameters.SearchText,'*')) ))}

Where myclass/country, myclass/town, myclass/body are the class and attributes where you want the search to be performed.

eZ debug

Timing: Jan 19 2025 03:36:55
Script start
Timing: Jan 19 2025 03:36:55
Module start 'content'
Timing: Jan 19 2025 03:36:55
Module end 'content'
Timing: Jan 19 2025 03:36:56
Script end

Main resources:

Total runtime0.1777 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0088 588.9531180.8359
Module start 'content' 0.00880.0069 769.789193.9922
Module end 'content' 0.01570.1620 863.7813523.0234
Script end 0.1777  1,386.8047 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00382.1214200.0002
Check MTime0.00150.8204200.0001
Mysql Total
Database connection0.00080.470410.0008
Mysqli_queries0.128972.51971410.0009
Looping result0.00150.84201390.0000
Template Total0.161490.810.1614
Template load0.00080.461310.0008
Template processing0.160690.367610.1606
Override
Cache load0.00050.288510.0005
Sytem overhead
Fetch class attribute can translate value0.00110.611010.0011
XML
Image XML parsing0.00030.168210.0003
General
dbfile0.00311.7238200.0002
String conversion0.00000.005030.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs