Jump to content
xt:Commerce Community Forum

advanced_search_results.php


sff

Recommended Posts

Keine Ahnung, ob schon bekannt, aber wenn Suchbegriffe in Anf?hrungszeichen eingeschlossen wurden, funktioniert der Link im NavTrail nicht, da die Anf?hrungszeichen f?lschlicherweise escaped werden...

Meines Erachtens m?sste es in der advanced_search_results.php statt:

$breadcrumb->add(NAVBAR_TITLE2_ADVANCED_SEARCH, xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords='.xtc_db_input($_GET['keywords']).'&search_in_description='.xtc_db_input($_GET['search_in_description']).'&categories_id='.(int)$_GET['categories_id'].'&inc_subcat='.xtc_db_input($_GET['inc_subcat']).'&manufacturers_id='.(int)$_GET['manufacturers_id'].'&pfrom='.xtc_db_input($_GET['pfrom']).'&pto='.xtc_db_input($_GET['pto']).'&dfrom='.xtc_db_input($_GET['dfrom']).'&dto='.xtc_db_input($_GET['dto'])));
besser:
$breadcrumb->add(NAVBAR_TITLE2_ADVANCED_SEARCH, xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords='.urlencode($_GET['keywords']).'&search_in_description='.urlencode($_GET['search_in_description']).'&categories_id='.(int)$_GET['categories_id'].'&inc_subcat='.urlencode($_GET['inc_subcat']).'&manufacturers_id='.(int)$_GET['manufacturers_id'].'&pfrom='.urlencode($_GET['pfrom']).'&pto='.urlencode($_GET['pto']).'&dfrom='.urlencode($_GET['dfrom']).'&dto='.urlencode($_GET['dto'])));

hei?en.

Also urlencode statt xtc_db_input.

Link to comment
Share on other sites

... leider war es damit noch nicht getan :sad:

Suchmaschinenfreundliche Links vertragen sich nicht mit einem "/" (Slash) im Suchstring. Auch mit den Anf?hrungszeichen war das Problem noch nicht ganz gel?st.

Hier also ein Update:

Statt obiger Zeile habe ich nun folgendes eingetragen:


	// XTC-DELUXE.DE bugifx: advanced search with quotes

	$breadcrumb_link = 'keywords=';

	if (get_magic_quotes_gpc())

 	$breadcrumb_link .= urlencode(stripslashes($_GET['keywords']));

	else

 $breadcrumb_link .= urlencode($_GET['keywords']);

	if (xtc_not_null($_GET['search_in_description']))

 $breadcrumb_link .= '&search_in_description='.urlencode($_GET['search_in_description']);

	if (xtc_not_null($_GET['categories_id']))

 $breadcrumb_link .= '&categories_id='.(int)$_GET['categories_id'];

	if (xtc_not_null($_GET['inc_subcat']))

 $breadcrumb_link .= '&inc_subcat='.urlencode($_GET['inc_subcat']);

	if (xtc_not_null($_GET['manufacturers_id']))

 $breadcrumb_link .= '&manufacturers_id='.(int)$_GET['manufacturers_id'];

	if (xtc_not_null($_GET['pfrom']))

 $breadcrumb_link .= '&pfrom='.urlencode($_GET['pfrom']);

	if (xtc_not_null($_GET['pto']))

 $breadcrumb_link .= '&pto='.urlencode($_GET['pto']);

	if (xtc_not_null($_GET['dfrom']))

 $breadcrumb_link .= '&dfrom='.urlencode($_GET['dfrom']);

	if (xtc_not_null($_GET['dto']))

 $breadcrumb_link .= '&dto='.urlencode($_GET['dto']);


	$breadcrumb->add(NAVBAR_TITLE2_ADVANCED_SEARCH, xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, $breadcrumb_link, $GLOBALS['request_type'], true, false));

	// XTC-DELUXE.DE bugifx: advanced search with quotes END
U.a. hat dies die Auswirkung, dass dieser Link nicht Suma-freundlich ist - muss er aber mE auch gar nicht sein. Nun habe ich gleich noch festgestellt, dass (bei eingeschalteten magicquotes) das Keyword wieder escaped wird, wenn es erneut in die Suchbox geschrieben wird (z.B. wenn kein Produkt gefunden wird.) Dies l?sst sich in der Datei inc/xtc_draw_input_field.inc.php ?ndern: Nach:
if ( (isset($GLOBALS[$name])) && ($reinsert_value == true) ) {
bitte folgendes einf?gen:

  // XTC-DELUXE.DE bugifx: advanced search with quotes

  // strip magicquotes

  if (get_magic_quotes_gpc()) $GLOBALS[$name] = stripslashes($GLOBALS[$name]);

  // XTC-DELUXE.DE bugifx: advanced search with quotes END	

Nach meinem Kenntnisstand stellt das Enfernen der Slashes hier kein Sicherheitsrisiko dar. Ich w?rde mich aber trotzdem freuen, wenn einer der Kollegen oder Kolleginnen das best?tigen oder dementieren w?rde. :rolleyes:

Ein Alternative w?re dann eben $reinsert_value in den Suchboxen auf "false" zu stellen.

Link to comment
Share on other sites

Tja, wenn ich da mal nicht die Links in de Seitennavigation (unten) ?bersehen h?tte... :hit:

Auch hier sollten "normale" Links generiert werden, anstatt den SEF-Links

inc/xtc_href_link.inc.php:

if ( (SEARCH_ENGINE_FRIENDLY_URLS == 'true') && ($search_engine_safe == true) ) {
durch:

// XTC-DELUXE.DE bugifx: advanced search with quotes

if ( (SEARCH_ENGINE_FRIENDLY_URLS == 'true') && ($search_engine_safe == true) && $page != FILENAME_ADVANCED_SEARCH_RESULT) {

// XTC-DELUXE.DE bugifx: advanced search with quotes END

Link to comment
Share on other sites

Als w?re das noch nicht genug, funktionieren die Buy-Now-Buttons auch nicht :hit:

Als schnelle Abhilfe habe ich in der includes/modules/product_listing.php beide Vorkommen von:

xtc_get_all_get_params(array ('action'))
durch:
xtc_get_all_get_params(array ('action','keywords'))

ersetzt.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...