Back to top

Autore Topic: [RISOLTO] Costrutto switch / if else if in PHP su un campo {chronoconnectivity}  (Letto 2580 volte)

Offline johnny64

  • Nuovo arrivato
  • *
  • Post: 26
    • Mostra profilo
Salve a tutti! Sono ancora a chiedere aiuto! Si tratta di Chronoconnectivity, lancio una query che con i dovuti filtri mi seleziona una serie di record dai quali ottengo i dati che visualizzo nel frontend mediante il seguente codice inserito nel corpo Body del Connection View Settings:
<div>
<table width="100%" height="10" border="1">
<tr>
   <td width="25%">Numero Progressivo:</td>
   <td width="100%">{cf_id}</td>
</tr>
<tr>
   <td width="25%">Tecnico Incaricato:</td>
   <td width="100%">{tecnico_incaricato}</td>
</tr>
</table>
</div> 
Il campo {tecnico_incaricato} contiene l'indirizzo email del tecnico.
Vorrei creare un'associazione email - nomecognome  in modo che in funzione dell'indirizzo email letto dal db venga mostrato il corrispondente nomecognome.
Ho pensato di realizzare la funzione tramite switch con il seguente codice:
<div>
<table width="100%" height="10" border="1">
<tr>
   <td width="25%">Numero Progressivo:</td>
   <td width="100%">{cf_id}</td>
</tr>
<tr>
   <td width="25%">Tecnico Incaricato:</td>
   <td width="100%"><?php $Email = '{tecnico_incaricato}';
            switch ($Email)
            {
            case 'operatore01@xxx.xxx':
            echo 'Mario Rossi';
            break;
            case 'operatore02@xxx.xxx':
            echo 'Luca Bianchi';
            break;
            case 'operatore03@xxx.xxx':
            echo 'Franco Neri';
            break;
            default:
            echo 'Da definire';
            }
            ?></td>
</tr>
</table>
</div>
Non funziona! La pagina non mostra nessun risultato e rimane completamente bianca (come se si verificasse un errore nel codice PHP)
Ho provato con il costrutto "if else if"
<div>
<table width="100%" height="10" border="1">
<tr>
   <td width="25%">Numero Progressivo:</td>
   <td width="100%">{cf_id}</td>
</tr>
<tr>
   <td width="25%">Tecnico Incaricato:</td>
   <td width="100%"><?php $Email = '{tecnico_incaricato}';
            if ($Email == 'operatore01@xxx.xxx')
            {{ echo 'Mario Rossi' ;}
            else if ($Email == 'operatore02@xxx.xxx')
            { echo 'Luca Bianchi' ;}
            else if ($Email == 'operatore03@xxx.xxx')
            { echo 'Franco Neri' ;}
            else
            { echo 'Da definire' ;}
            }
            ?></td>
</tr>
</table>
</div>
Non funziona neanche questo! Ho però verificato che il campo {tecnico_incaricato} è valorizzato, infatti se inserisco il seguente codice:
<div>
<table width="100%" height="10" border="1">
<tr>
   <td width="25%">Numero Progressivo:</td>
   <td width="100%">{cf_id}</td>
</tr>
<tr>
   <td width="25%">Tecnico Incaricato:</td>
   <td width="100%"><?php $Email = '{tecnico_incaricato}'; echo $Email; ?></td>
</tr>
</table>
</div>
Mi viene mostrato l'email del tecnico. In che cosa sbaglio!
Grazie per i suggerimenti che mi vorrete dare.
Saluti.
« Ultima modifica: 19 Dic 2010, 03:46:08 da johnny64 »

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Quando sei in php, per recuperare i valori di campo, non puoi usare {campo} che vale solo in HTML.

Come detto in questa guida

http://www.joomla.it/articoli-della-community/3897-chronoforms-e-chronoconnectivity-alcuni-aggiornamenti.html

in php si recupera il valore di un campo con $Myrow->nome_campo.

Credo che il problema sia questo.

Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org

Offline johnny64

  • Nuovo arrivato
  • *
  • Post: 26
    • Mostra profilo
Mi scuso! Nonostante abbia letto il tuo tutorial più volte, quel particolare mi era sfuggito.
A beneficio dei newbies come me posto il codice modificato secondo il tuo suggerimento:
<tr>
       <td width="25%">Tecnico Incaricato:</td>
       <td width="100%"><?php $A = $MyRow->tecnico_incaricato;
if ($A == 'operatore01@xxx.xxx') echo 'Mario Rossi' ;
else if ($A == 'operatore02@xxx.xxx') echo 'Luca Bianchi' ;
else if ($A == 'operatore03@xxx.xxx') echo 'Franco Neri'  ;
else echo 'Da definire' ;
?></td>
</tr>

 ;) Grazie vales! Alla prossima!

 



Web Design Bolzano Kreatif