mi sono incartato su un campo generato con CreateInputText (frontend).
Lo uso in un form, creato con CreateFrontEndFormStart, per eseguire una semplice ricerca con LIKE.
Il problema: se metto una parola con apice nel form, ad esempio "L'anatra":
1) la ricerca non trova niente nel Db anche se la parola esiste
2) nel campo di ricerca, dopo il submit, compare l'apice come entità (L'anatra)
C'è qualcosa che mi sfugge, ovviamente...
Qualche suggerimento?
Grazie
Il codice
- Nel file xxx.module.php ho registrato: $this->SetParameterType('inputsearch',CLEAN_STRING);
- Nella pagina action.default.php:
Code: Select all
if( isset( $params['inputsearch'] ) && !empty( $params['inputsearch'] ) ) {
$search = trim($params['inputsearch']);
//$inputsearch = html_entity_decode(trim($params['inputsearch']));
$inputsearch = trim($params['inputsearch']);
$search = explode(' ', $search);
$search = "Titolo LIKE '%" . join("%' AND Titolo LIKE '%", $search) . "%'";
$add_search = " AND ($search)";
$query .= $add_search;
}
#### DEGUG ######
echo "Search = ". $search;
echo "<br>";
echo "inputsearch = ". $inputsearch;
##################
//Assegnazione a Smarty del campo testo:
$this->smarty->assign('inputsearch',
$this->CreateInputText($id, 'inputsearch', $inputsearch, 30, 250));
Gli echo del DEBUG stampano:
Search = Titolo LIKE '%L'anatra%'
inputsearch = L'anatra
Info Sistema e CMS
----------------------------------------------
Cms Version: 1.7.1
Installed Modules:
* CMSMailer: 2.0
* FileManager: 1.0.2
* MenuManager: 1.6.3
* ModuleManager: 1.3.3
* News: 2.10.5
* nuSOAP: 1.0.1
* Printing: 1.0.4
* Search: 1.6.3
* ThemeManager: 1.1.1
* TinyMCE: 2.7.0
* GestioneFondiJA: 1.0
Config Information:
* php_memory_limit:
* process_whole_template: false
* max_upload_size: 2000000
* default_upload_permission: 664
* assume_mod_rewrite: true
* page_extension: .htm
* internal_pretty_urls: false
* use_hierarchy: true
Php Information:
* phpversion: 5.3.2-0.dotdeb.1
* md5_function: On (Vero)
* gd_version: 2
* tempnam_function: On (Vero)
* magic_quotes_runtime: Off (Falso)
* E_STRICT: 0
* E_DEPRECATED: 0
* memory_limit: 128M
* max_execution_time: 30
* safe_mode: Off (Falso)
* session_save_path: /tmp (1777)
* session_use_cookies: On (Vero)
Server Information:
* Server Api: apache2handler
* Server Db Type: MySQL (mysqli)
* Server Db Version: 5.1.44
----------------------------------------------