Back to top

Autore Topic: Chronoform - filtrare per visualizzare in liste separate  (Letto 1650 volte)

Offline deadwolf

  • Esploratore
  • **
  • Post: 96
    • Mostra profilo
Ho una tabella in cui ci sono più valori esempio:


marca - modello - colore - porte


Attraverso l'uso di un DB Multi Record Loader e di un url sono riuscito a far caricare in una pagina solo i dati inerenti a ad un determinato valore MARCA


Ma se io in questa pagina volessi dividere ancora in due o più liste il MODELLO che ha 3 PORTE dai MODELLI che hanno 5 PORTE come faccio?


Non so come farmi capire.. se con l'url passo il parametro col quale filtro i dati estratti dalla tabella questi poi li posso far visualizzare tutti come una singola lista già con i dati filtrati grazie al parametro passato dall'url, ma se poi volessi da questi dati applicare un'altro filtro per suddividere la lista in due.. come faccio?


Ho provato a servirmi delle mie scarse competenze in php con una query SELECT tabella WHERE modello= berlina AND porte=5 ma non ho ottenuto molti risultati.. volevo sapere se esiste un'alternativa con chronoform senza dover pasticciare troppo col php...

Offline deadwolf

  • Esploratore
  • **
  • Post: 96
    • Mostra profilo
Re:Chronoform - filtrare per visualizzare in liste separate
« Risposta #1 il: 07 Mar 2013, 15:01:24 »
Ciò di cui ho bisogno forse è da mettere in "WHERE statement"
Come avevo già letto ieri in una risposta di vales.
Il problema principale è che anche se cerco su GOOGLE non vedo come ottenere un codice che possa servirmi.


I valori della tabella unità sono:
uni_cond - uni_pal - uni_sca - uni_pia - uni_tip - uni_ute



I valori della tabella palazzina sono:
cand_inte - pal_inte - pal_sca1 - pal_sca2 - pal_sca3 - pal_sca4


Ho riprovato a dedicarmi al php creando questo codice che naturalmente non capisco perchè non funzioni:




Codice: [Seleziona]
<table id="db_multi_record_loader" width="100%" border="0">
<tr>
<?php


$db 
=& JFactory::getDBO();
$query "SELECT FROM #__chronoforms_data_addpalazzine WHERE cand_inte='".$form->data['rec']."'";
$db->setQuery($query);
$db->query();
foreach (
$bb as $a
{
echo 
"
<td> "
.$a['pal_inte']." </td>
"
;
if( 
$a['pal_sca1'] == 'Scala A')
  {
echo"<tr>Scala A</tr>";
$db =& JFactory::getDBO();
    
$query "SELECT FROM #__chronoforms_data_addunita WHERE uni_cond='".$form->data['rec']."' AND uni_sca='A'";
    
$db->setQuery($query);
    
$db->query();
    foreach (
$bb as $a
            {  
echo "<tr>".$a['uni_ute']."</tr>";}
        
  }


}
?>

</tr>
</table>




Per ottenere il seguente risultato:

(non ho ancora aggiunto il valore uni_pia perchè già così non funziona..)

Esiste un modo più semplice o devo dedicarmi al php?.. dove sbaglio nel codice?.. Ho paura di star puntando ad imprese  un po' troppo ardue..





Offline deadwolf

  • Esploratore
  • **
  • Post: 96
    • Mostra profilo
Re:Chronoform - filtrare per visualizzare in liste separate
« Risposta #2 il: 11 Mar 2013, 11:39:38 »
Proprio nulla vero? Nessuna minima idea?

Offline vales

  • Global Moderator
  • Instancabile
  • *****
  • Post: 8012
  • Sesso: Maschio
    • Mostra profilo
Re:Chronoform - filtrare per visualizzare in liste separate
« Risposta #3 il: 11 Mar 2013, 19:50:30 »
Nelle select che hai mostrato non hai messo i campi che vuoi estrarre oppure se li vuoi tutti metti l'asterisco *
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 deadwolf

  • Esploratore
  • **
  • Post: 96
    • Mostra profilo
Re:Chronoform - filtrare per visualizzare in liste separate
« Risposta #4 il: 11 Mar 2013, 21:25:35 »

Grazie mille Vales per la risposta... Mi vengono altri dubbi in mente visto che ho riscritto il codice e sot provando ad utilizzare chronoform con meno php possibile...

Ma è possiible fare la stessa cosa in modo molto più semplice attraverso WHERE statement?


Es:


Codice: [Seleziona]
<?php


$bb
=$form->data['elencopala'];
foreach (
$bb as $a){
      echo 
"<tr>";
       echo 
"<td colspan=\"4\">".$a['pal_inte']."</td>";
       echo 
"</tr>";
      
$bb=$form->data['elencounita'];
       foreach (
$bb as $a) {
         echo 
" sca".$a['uni_sca']." ";
         echo 
" ute".$a['uni_ute']." ";
              
             }      
      }
?>


Where statement DB Multi Record Loader, WHERE Statement:


Codice: [Seleziona]
`uni_sca` = '{pal_sca}' AND `uni_cond` = '{cand_inte}'

E' possibile? dove sbaglio?


Già attraverso Request Param: rec, filtro uni_cond.. mi è necessario rifiltrarlo attraverso l' AND nel WHERE statement?

Offline deadwolf

  • Esploratore
  • **
  • Post: 96
    • Mostra profilo
Re:Chronoform - filtrare per visualizzare in liste separate
« Risposta #5 il: 14 Mar 2013, 14:06:57 »
up..

 



Web Design Bolzano Kreatif