Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23

Discussione: Apici e problemi

  1. #1

    Apici e problemi

    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

  2. #2
    sarebbe utile sapere che cms usi, inoltre forse possono esserti più di aiuto nella sezione cms

  3. #3
    Utilizzo un CMS abbastanza recente, OSclass, mi hanno mandato qui dalla sezione database U.u

  4. #4
    la regione come l'hai creata nel database? dal pannello di controllo?

  5. #5
    se al posto dell'apostrofo normale metti questo ´ ?

  6. #6
    Mi sembra di averlo inserita direttamente nel database tramite phpmyadmin..
    Intendi sostituire nel database ' con ´?

    EDIT: Mettendo ´ funziona, ma graficamente non è proprio il massimo

  7. #7
    si

  8. #8
    Per migliorarlo graficamente posso mettere un if strcasecmp con valle d´aosta e sostituirlo con valle d'aosta... oppure esiste un modo per creare una funzione che sostituisca tutti gli ´ con '?

  9. #9
    supponendo che la il testo in cui vuoi sostituirlo sia $titolo fai
    Codice PHP:
    $titolo str_replace("´""'"$titolo); 
    sostituisce tutte le ´ con '

  10. #10
    Ma se io non avessi una variabile contenente la stringa? Posso passargli direttamente
    Codice PHP:
    str_replace("´","'"'Valle d´Aosta'); 
    ?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.