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: dropbox.com/s/du1weqi2t...baseregioni.png
E data la funzione che genera il link:
[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;
}
[/php]
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(all'incirca).
Il mio obbiettivo sarebbe rendere i link del tipo valle%20d-aosta oppure valle-d-aosta (penso che entrambe sia valide per il posizionamento sui motori di ricerca)
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
PS2: questo è un link ad una cartella di dropbox contenente tutti i file che vengono usati per la creazione di un link per una regione
link: dropbox.com/sh/zo8i6o97p12m1mj/GJJcAckLsn
PS3: (giuro che è l'ultimo) se può servire uso un CMS recente chiamato OSclass