Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1

    Gestione delle lingue in un sito in php

    Ciao ha tutti.
    Ho un porblema nel sincronizzare gli aggiornamenti in un sito a 4 lingue.
    Attualmente tutti i testi sono raccolti in 4 file php (it, es, en, fr) che edito manualmente. Succede che aggiungendo una variabile in un file, non sempre aggiorno anche gli altri e il tutto col tempo si è scoordinato.
    Mi chiedevo quindi se esista un programma open source che permetta di fare le traduzioni e che di volta in volta mi generi in automatico i file di lingua (in PHP o XML) di conseguenza.
    Ho visto una cosa simile con il QT Linguist, usato per lo stesso scopo nell'ambito della programmazione, e mi chiedevo se esistesse qualcosa pensato per il web.
    Grazie

  2. #2

  3. #3
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Interessante ...

    Io pero' metterei tutto su database ..... e controllando i dati di lingua del browser caricherei la colonna della lingua relativa se siste senno quella di default oppure quella settata su cookie.

    Poi ovviamente ad ognuno il suo.

  4. #4
    Originariamente inviato da Virus_101
    Io pero' metterei tutto su database ..... e controllando i dati di lingua del browser caricherei la colonna della lingua relativa se siste senno quella di default oppure quella settata su cookie.
    Infatti anche io uso questo metodo.
    Come formattare i testi "fissi" poi dipende da te.
    La soluzione più semplice potrebbe essere quella di creare delle pagine base che fanno le query alle colonne relative alla lingua.



    - edit -
    Ho scritto da schifo, spero tu abbia capito lo stesso!
    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    143
    E quindi ogni volta che dovete tradurre del testo dovete eseguire una query?
    Soluzione poco scalabile.
    Che vantaggi vi offre?

  6. #6
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    No non si tratta di tradurre dinamicamente del testo.

    Vero' che non e' molto scalabile in termini di java e hibernate, che richiedono una progettazione enorme del db preventiva allo sviluppo del sistema.

    Ma in php+mysql e' la sol piu' comoda.
    Con un alter table add column esp text default ''; mi aggiungo tte le lingue che voglio.
    Inoltre se devo far tradurre i testi li posso sempre passare al traduttore di google e poi popolare comodamente la tabella con deglu update fatti bene.

    il fatto e' che una volta popolato il db con i testi posso riutilizzarli come volgio, non ho problemi di metterli sotto htaccess e proteggere la dir, inoltre sono piu' portabili da un sistema all'altro, mi consentono ricerche avanzate cosa che su file e' dure da fare.

    E' vero che devo querare il db per avere le lingue, ma cosi' evito di aprire files, e possono mettere il server sql dove mi pare e usare un repository unico per tutti i dati.
    E poi le query sono mooooooolto veloci e faccio anche prima se devo fare ricerche.

    Oh poi ognuno usi quello con cui lavora meglio, io mi trovo comodo cosi' e secondo me e' una buona soluzione veloce da implementare e nonostante tutto anche abbastanza scalabile.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    143
    Fare query invece di aprire files é di per sé una scelta infelice.
    Non capisco che ricerche avanzate puoi fare, stiamo parlando di labels, mica di tradurre news.
    Metti che in una pagina abbia 20 etichette da tradurre, sono 20 query, veloci quanto vuoi ma sono 20, anche se la pagina avesse un visitatore al giorno sarebbero 20 query, mentre con files dictionary (che nn devi aprire devi includere e non devi proteggere con niente), le query sono 0.
    Se poi le visite sono 100 mila, sono 20*100 mila query, per tradurre utente=user, novitá=news, ciao utente sei loggato etc.
    Né capisco perché non sarebbe portabile la soluzione con files di testo.

  8. #8
    Originariamente inviato da kiboo
    Non capisco che ricerche avanzate puoi fare, stiamo parlando di labels, mica di tradurre news.
    Io intendevo una cosa del tipo....

    Si preparano delle pagine di base con le varie etichette tradotte, magari una per ogni lingua, e poi si usa la variabile della lingua selezionata dall'utente per le interrogazioni al DB.
    Di sicuro non è il migliore dei metodi, ma quantomeno è relativamente semplice da realizzare.
    Se poi chi ha aperto il thread sa come usare sprintf() o simili, allora ci si può permettere un codice molto più scalabile e performante.

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  9. #9
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Gia' non si tratta di tradurre dinamicamente le cose e poi non sarebbero 20 query -.-

    Se carica 1 pagina in lingua esegue 1 query che estrae i testi tradotti della pagina.
    Inoltre se fai una include come pensi che funzioni?
    Lìinclude deve sempre effettuare un accesso al disco leggere il file , gestire l'errore e poi stampare il contenuto e sinceramente e' piu' lenta che nn fare una query visto che i db nascono prorpio per fornire dati in tempo breve.

    Il discorso ricerche e' comodo perche' poso cercare token all'interno dei testi e posso modificarli, posso inoltre creare dei pannelli di controllo contenuti molto piu' avanzati che nn tenere tutto su files.

    Per me il db e' meglio.

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    143
    Originariamente inviato da Virus_101

    Lìinclude deve sempre effettuare un accesso al disco leggere il file , gestire l'errore e poi stampare il contenuto e sinceramente e' piu' lenta che nn fare una query visto che i db nascono prorpio per fornire dati in tempo breve.
    A parte che i database non nascono per questo, ti chiedo ... potresti anche portare i dati della tua affermazione?

    Tempi di esecuzione di
    echo di una array contenuta in un file incluso
    VERSUS
    Query a un database.

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.