Back to top

Autore Topic: Costante errata (?) in php con breezingform  (Letto 2637 volte)

Offline carlodamo

  • Global Moderator
  • Instancabile
  • ********
  • Post: 3817
  • Sesso: Maschio
    • Mostra profilo
Costante errata (?) in php con breezingform
« il: 25 Nov 2008, 11:22:24 »
Ciao a tutti.
sono alle prese con breezingform, vorrei creare un pacchetto di un formulario con le traduzioni incluse, come avevo per facileform.
Vado al sodo.
Io in breezing, ho il mio form, tra le altre ho ad es. un elemento in Testo/HTML Statico che chiamo "nome". Questo voglio che sia richiamato a seconda della lingua scelta dall'utente in italiano o inglese.
Prima con facileform mettevo al posto dell'etichetta "nome", mettevo "<?php return tr_nome; ?>"
Poi in una parte di tipo "prima del form" (cosi si chiamano in facileform) mettevo:
----------------------------------------------------------------
global $mosConfig_lang;

switch ($mosConfig_lang){

case 'italian': // ITALIANO
    define ('tr_nome', 'nome *');
    break;

case 'english': // ENGLISH
    define ('tr_nome', 'name *');
    break;

} //END switch
----------------------------------------------------------------

Ora questo non funziona piu con breezing, mi fa vedere sia in italiano che in inglese "tr_nome" e mi da sti errori:

*** EXCEPTION CAUGHT BY FACILE FORMS ***
Errore livello PHP : E_NOTICE
Nome file PHP    : /home/gestione/domains/sito....com/public_html/sottodom..../components/com_facileforms/facileforms.process.php(1027) : eval()'d code
Numero linea  : 1
Ultima posizione nota  : data1 of nome[1] alla linea 1
Messaggio d\'errore   : Use of undefined constant tr_nome - assumed 'tr_nome'


Sapete aiutarmi? a naso sbaglio in qualche dichiarazione, purtroppo non conosco il php...

Grazie mille per il vostro eventuale supporto.

Ciao
Evisole Web agency a Vicenza

Offline sali40

  • Global Moderator
  • Instancabile
  • ********
  • Post: 4791
  • Sesso: Maschio
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #1 il: 25 Nov 2008, 12:23:36 »
Se usi joomla 1.5, non mi pare che la variabile lingua sia "mosConfig_lang". Anzi, credo proprio che il "mosConfig" non ci sia proprio più. Adesso non so come vada richiamata la variabile

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #2 il: 25 Nov 2008, 12:38:50 »
ciao carlo perchè non usi
Codice: [Seleziona]
JText::_('Nome')?

Offline carlodamo

  • Global Moderator
  • Instancabile
  • ********
  • Post: 3817
  • Sesso: Maschio
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #3 il: 25 Nov 2008, 13:10:40 »
grazie per i vostri interventi. purtroppo di php non ne capisco proprio nulla.

Odino, se riesci, potresti indicarmi con precisione dove e come usare quella tua riga di codice?

grazie
Evisole Web agency a Vicenza

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #4 il: 25 Nov 2008, 14:53:48 »
certus!

JText è "il traduttore" di Joomla!

Quando viene rielaborato il codice, se devi stampare una variabile, e prevedi più lingue, devi semplicemente inserire invece che:

Codice: [Seleziona]
$mia_variabile = 'Hello';
echo $mia_variabile;

basta un semplice:

Codice: [Seleziona]
echo JText::_('HELLO');
che verrà tradotto in automatico a seconda della lingua con cui è visualizzato il sito.

Occhio, la stringa 'HELLO' ( presente in JText ) dev'essere presente anche nel file .ini dell'estensione o più semplicemente nel file di lingua italiano

Codice: [Seleziona]
language/it-IT/it-IT.ini
dove trovi le altre stringhe che vengono tradotte!

Tu aggiungi una riga come:

Codice: [Seleziona]
HELLO=ciao
e sei a cavallo.

Se stai sviluppando un sito in più lingue, inserisci la stringa:

Codice: [Seleziona]
HELLO=hello_nella_lingua_in_uso
in ogni file di lingua del sito, tipo:

Codice: [Seleziona]
language/en-GB/en-GB.ini
per avere quel testo in inglese, oppure:

Codice: [Seleziona]
language/fr-FR/fr-FR.ini
per averlo nella versione francese del sito!

Offline carlodamo

  • Global Moderator
  • Instancabile
  • ********
  • Post: 3817
  • Sesso: Maschio
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #5 il: 25 Nov 2008, 20:50:23 »
EDIT.. ho modificato qualcosina...


Ecco risolto usando l'aiuto di Odino. Solo per puntualizzare per futuri utlizzatori:

ho sostituito <?php return tr_nome; ?> con <?php echo JText::_('TR_NOME'); ?>

Solo che ora nel breezing form non mi permette di muovere l'elemento (in questo caso titolo, nome, invio...) e rimangono tutti in alto a sinistra...

Date un'occhiata qui:

http://www.evisole.com/piazzatech/index.php?option=com_facileforms&Itemid=57&lang=it

Sich sich
« Ultima modifica: 25 Nov 2008, 21:29:03 da carlodamo »
Evisole Web agency a Vicenza

Offline = odino =

  • Instancabile
  • ******
  • Post: 5696
  • Sesso: Maschio
  • "In realtà li trasforma in menomati" Danzel
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #6 il: 26 Nov 2008, 12:45:52 »
oh beh li puoi racchiudere il tutto in un p o div e te lo gestisci come meglio credi

Offline carlodamo

  • Global Moderator
  • Instancabile
  • ********
  • Post: 3817
  • Sesso: Maschio
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #7 il: 26 Nov 2008, 17:25:36 »
oh beh li puoi racchiudere il tutto in un p o div e te lo gestisci come meglio credi
mmm conosci un po' facileform aka breezingform?
Forse è fattibile la tua soluzione, ma non so quanto agevole sia...

Ciao e grazie
Evisole Web agency a Vicenza

Offline sali40

  • Global Moderator
  • Instancabile
  • ********
  • Post: 4791
  • Sesso: Maschio
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #8 il: 27 Nov 2008, 19:06:45 »
Carlo, ma se mettessi il form in un contenuto non sarebbe meglio?

Tra l'altro in questo senso breezing funziona molto meglio di facile. L'inserimento in un contenuto funziona a meraviglia. Le parti fisse le metti nel contenuto e ne fai una traduzione ordinaria con Joomfish

Offline carlodamo

  • Global Moderator
  • Instancabile
  • ********
  • Post: 3817
  • Sesso: Maschio
    • Mostra profilo
Re: Costante errata (?) in php con breezingform
« Risposta #9 il: 28 Nov 2008, 10:21:20 »
Carlo, ma se mettessi il form in un contenuto non sarebbe meglio?

Tra l'altro in questo senso breezing funziona molto meglio di facile. L'inserimento in un contenuto funziona a meraviglia. Le parti fisse le metti nel contenuto e ne fai una traduzione ordinaria con Joomfish

Sali grazie per il suggerimento.

In realtà la tua soluzione è già stata considerata inizialmente. In effetti noi potremmo creare il nostro form e tradurlo come semplice element di joomfish.

La mia esigenza andava oltre. Considera di avere un form piuttosto complesso, con circa 30 voci. E considera che lo devi tradurre in almeno 4 lingue. E considera che questo form, lo stesso, lo devi riutilizzare più volte.

Usando i pacchetti, con facileform avevo un pack già fatto bello e pronto, bastava caricare il pack e le traduzione erano gia fatte perchè erano all'interno di una "parte". Proprio comodo.

Ecco tutto. Ora non riesco più.

Grazie comunque. Ciao
Evisole Web agency a Vicenza

 



Web Design Bolzano Kreatif