Joomla.it Forum
Componenti per Joomla! => Gestione Form => : marialba 16 Dec 2010, 23:28:45
-
Salve a tutti,
avrei bisogno di un aiuto.... è importante!
ho creato con chronoconnectivity un form per visualizzare la tabella jos_chronoforms_comunicazioni. E fin qui tutto ok.
Ora però vorrei visualizzare, di quella tabella solo i records che hanno cf_user_id uguale all'id dell'utente loggato. In Body di chronoconnectivity ho inserito questo codice, ma non mi esegue la query...
<?php
$db =& JFactory::getDBO();
$query = "SELECT * FROM jos_chronoforms_comunicazioni WHERE cf_user_id=78";
$db->setQuery($query);
$nomes = $db->loadRow();
?>
<div>
<p>codice utente <b>{cf_user_id}</b></p>
<p>giorni <b>{text_giorni}</b></p>
<p>tipologia <b>{radio0}</b></p>
<p></p>
Sapreste darmi una dritta sull'errore che faccio, per favore!
-
Ciao marialba.
Ho spostato il thread nella sezione Form perchè mi sembra più attinente.
-
Intanto credo che la query non sia proprio corretta. credo sarebbe meglio
$query = "SELECT * FROM #__chronoforms_comunicazioni WHERE cf_user_id=78";
poi, quanti record dovrebbe estrarre dalla tabella? Cioè, per ogni cf_user_id esiste un solo record o più record?
PS
mi sono permesso di modificare il tuo post per evidenziare meglio il codice
-
Ciao marialba,
la query non devi inserirla nel Body di chronoconnectivity ma nel: Query Related Settings - WHERE SQL
ed è sufficiente il codice di seguito illustrato:
<?php
$user =& JFactory::getUser();
echo "WHERE cf_user_id = '$user->id'" ;
?>
Gli altri dati utente che puoi ottenere con la stessa procedura sono:
Nome Utente: $user->username
Nome Reale: $user->name
Indirizzo Email: $user->mail
Ti consiglio di studiare gli ottimi tutorials di vales! Scoprirai che l'accoppiata Chronoform e Chronoconnectivity integrata da un minimo di codice php consente di fare cose straordinarie.
Ciao.
-
ok ho messo il codice così suggerito in sql
<?php
$user =& JFactory::getUser();
echo "WHERE cf_user_id = '$user->id'" ;
?>
ma non visualizza nulla
-
provando a smanettare dono riuscita ad avere quello che cercavo con questo codice in body
<?php
$user =& JFactory::getUser();
$utente=$user->id;
$tipo="Ferie";
$db =& JFactory::getDBO();
$query = "
SELECT sum(text_giorni)
FROM #__chronoforms_comunicazioni where cf_user_id='$utente' and radio0='$tipo'
";
$db->setQuery($query);
$nomes = $db->loadResult();
?>
<div>
<p>Ecco la tua situazione registrata:</p>
<p>Numero di gg di FERIE usufruite:<?php echo $nomes?></p>
</div>
ma mi restituisce il valore per un numero di volte pari ai recorrd della tabella, come se facesse un ciclo...
che vuol dire.
AIUTOOOOOOOO!!!!!!!
-
La teoria dice che dovrebbe funzionare.
ma prova a fare anche questo nella chiamata della query, un po' più brutale.
$db->setQuery($query);
$nomes = $db->loadRow();
?>
<div>
<p>Ecco la tua situazione registrata:</p>
<p>Numero di gg di FERIE usufruite:<?php echo $nomes[0]; ?></p>
</div>