Salve,
Ho un problemuccio sulla generazione di un link e non ho la più pallida idea di come risolverlo.
Praticamente sto creando un sito di annunci (compravendita informatica), ed ho problemi a gestire l'url di una regione, la Valle d'Aosta che contiene un apice, e ciò non piace molto alla funzione che genera il link, in quanto genera il link così :search/region,Valle%20d'Aosta/
che ovviamente non funziona perchè richiede il doppio apice ovvero: search/region,Valle%20d''Aosta/
Adesso dato il database così composto:https://www.dropbox.com/s/du1weqi2tv...aseregioni.png
E data la funzione che genera il link:
Codice PHP:
function osc_search_url($params = null) {
if(osc_rewrite_enabled()) {
$url = osc_base_url().osc_get_preference('rewrite_search_url');
if($params!=null) {
$url .= "/";
foreach($params as $k => $v) {
switch($k) {
case 'sCountry':
$k = osc_get_preference('rewrite_search_country');
break;
case 'sRegion':
$k = osc_get_preference('rewrite_search_region');
break;
case 'sCity':
$k = osc_get_preference('rewrite_search_city');
break;
case 'sCityArea':
$k = osc_get_preference('rewrite_search_city_area');
break;
case 'sCategory':
$k = osc_get_preference('rewrite_search_category');
if(is_array($v)) {
$v = implode(",", $v);
}
break;
case 'sUser':
$k = osc_get_preference('rewrite_search_user');
break;
case 'sPattern':
$k = osc_get_preference('rewrite_search_pattern');
break;
default:
break;
}
if($k!='page') {
$url .= $k.",".$v."/";
}
}
}
} else {
$url = osc_base_url(true) . '?page=search';
if($params!=null) {
foreach($params as $k => $v) {
if( is_array($v) ) {
foreach($v as $aux) {
$url .= "&" . $k . "[]=" . $aux;
}
} else {
$url .= "&" . $k . "=" . $v;
}
}
}
}
return $url;
}
Cosa posso fare affinchè l'url di ricerca della valle d'aosta funzioni correttamente?
Per capire meglio l'errore che si genera lascio il dominio del sito tecnomercatino.it, senza link per evitare spam inutile, basta cliccare su valle d'aosta sull'homepage e si palesa subito l'errore. Se si sostituisce nella barra degli indirizzi "valle d'aosta" con ''valle d''aosta" tutto funziona (tranne un paio di errori di stampa facilmente risolvibili).
Il problema è che far generare in automatico il link a "valle d''aosta" è un casino in quanto uso un CMS e i link se li autogenera attingendo al nome delle regioni nel database.
Ho notato che alcuni siti di annunci famosi gestiscono l'url della valle d'aosta come valle-d-aosta... ma non saprei come farlo sul mio sito
Qualsiasi aiuto è ben accetto^^
Grazie in anticipo.
PS: se servono spezzoni di codice o altri screenshot per capire meglio il problema fatemi sapere