Joomla.it Forum

Componenti per Joomla! => Gestione Form => : Ago_ 09 Nov 2016, 17:38:28

: [RISOLTO] da text box a dropdown dinamico
: Ago_ 09 Nov 2016, 17:38:28
Ciao ragazzi, sto modificando il sistema che ho trovato su questo sito dei dropdown dinamici regioni-->province-->comuni
vorrei modificarlo in un dropdown automatico non modificabile dall'utente
clienti-->agenti-->manager
però io all'inizio del form ho già un textbox che identifica l'id del cliente con questo codice

:
<?php
$user 
JFactory::getUser();
$form->data['codiceutente'] = $user->username;
?>

come posso fare per collegare il valore del textbox id_user con il primo dropdown cliente ?? dovrei usare una funzione di copia incolla o rendere il primo dropdown il textbox iniziale stesso, voi che mi consigliate ?
: Re:da text box a dropdown dinamico
: Ago_ 16 Nov 2016, 10:16:18
Ho risolto il problema aggirandolo, ho inserito due nuovi campi nella tabella user per specificare alcune relazioni particolari.

Adesso sto seguendo la guida di giusebos presente su icagenda, perfetta in ogni parte, installata la demo perfettamente funzionante. Ma se provo ad applicarla al mio form non mi funziona, penso sia un problema di impostazioni di tabelle, spiego meglio....

la demo ragiona su regioni-->province-->comuni
invece io dovrei fare il processo inverso
clienti-->agenti-->responsabili (inutile direi che 3 responsabili hanno piu agente, e piu agenti hanno piu clienti)

clienti: idcliente, nomecliente, idagente
agenti: idagente, nomeagente, idmanager
manager: idmanager, nomemanager

sono quasi certo sia errata l'impostazioni delle tabelle, in ogni caso io devo partire dal dato del cliente (l'unico che ho in partenza).

qualche suggerimento ?? grazie
: Re:da text box a dropdown dinamico
: Ago_ 17 Nov 2016, 17:02:32
essendo che in ogni tabella va ripetuta in un campo la chiave primaria della tabella padre, ho scoperto che non posso adattare 3 dropdown dinamici al mio caso per il fatto che hanno una proprietà inversa rispetto al ragionamento regione-provincie-comuni

devo inventarmi un altro modo per arrivare ad avere su due campi/dropdown il manager e l'agente relativi partendo dal cliente.
: Re:da text box a dropdown dinamico
: tomtomeight 17 Nov 2016, 20:06:57
Puoi avere quante dipendenze vuoi, devi solo correlare nel modo giusto le tabelle, cioè ogni tabella padre deve avere un campo in comune con una tabella figlia,

Così per esempio riporto il caso regione provincia comune:

Tabella regione avrà solo un id chiave primaria per comodità idRegione ma puoi chiamarlo come ti pare
Tabella province avrà un idProvincia primaria ed un idRegione che dovrà essere uguale all'idRegione della regione di appartenenza
Infine tabella comuni avrà idProvincia primaria ed un idprovincia che dovrà essere uguale all'idprovincia della provincia di appartenenza.

Puoi proseguire quanto vuoi e non ha importanza che i nomi siano regioni, provincia o comuni ma puoi mettere quello che ti pare purché rispetti le dipendenze, poi ci saranno tanti sistemi di script per ricavare i dropdown la struttura dek db non cambia se cambia il codice. dai uno sguardo anche a come l'ho realizzato con datagrill (in firma)

xataface.it/esempio.html
se entri come utente registrato puoi aggiungere o modificare.
user e pw tester
xataface.it/login.html
: Re:da text box a dropdown dinamico
: Ago_ 21 Nov 2016, 11:54:12
si, ho studiato come mettere in relazione clienti-->agenti-->responsabili
ma è impossibile con questra struttura partendo dal responsabile
quindi l'esempio regioni-->province-->comuni non si può utilizzare

a quesdto punto penso di creare unica tabella con i campi (idcliente, nomecliente, agente, responsabile) e usare un codice che scelto il cliente da un dropdown mi faccia la select dei dati restanti dello stesso record scelto e stampare su due textboxd (agente, responsabile)
: Re:da text box a dropdown dinamico
: Ago_ 21 Nov 2016, 17:58:14
informandomi sul forum ufficiale chronoengine ho capito che per caricare altri campi di un record scelto tramite dropdown ho bisogno di javaScript con una chiamata ajax, sfruttando una matrice JSON. Sto cercando delle faq ma non riesco a trovare niente di esplicativo.
: Re:da text box a dropdown dinamico
: giovi 22 Nov 2016, 08:59:30
Se parti dal cliente che senso ha avere delle dropdown per scegliere le altre entità se sono già state impostate sul db  ;D  Il dropdownl è pensato per selezioni consecutive e conseguenziali, nel tuo caso a mio parere non hoa molto senso.

A questo punto lasci le tabelle invariate e quando vai a fare la select su clienti farai in realtà una select su
:
* FROM clienti NATURAL JOIN agenti NATURAL JOIN manager Così alla prima selezione hai già tutti i campi che ti interessano. Occhio però perchè questo è equivalente ad avere il tabellone "idcliente, nomecliente, agente, responsabile".

Sicuro che è quello che ti serve?
: Re:da text box a dropdown dinamico
: tomtomeight 22 Nov 2016, 09:34:51
informandomi sul forum ufficiale chronoengine ho capito che per caricare altri campi di un record scelto tramite dropdown ho bisogno di javaScript con una chiamata ajax, sfruttando una matrice JSON. Sto cercando delle faq ma non riesco a trovare niente di esplicativo.

Con datagrill + xataface non serve nessun codice javascript aggiuntivo, è tutto già incluso.
: Re:da text box a dropdown dinamico
: vales 22 Nov 2016, 11:26:53
informandomi sul forum ufficiale chronoengine ho capito che per caricare altri campi di un record scelto tramite dropdown ho bisogno di javaScript con una chiamata ajax, sfruttando una matrice JSON. Sto cercando delle faq ma non riesco a trovare niente di esplicativo.

E'nel mio articolo sulle dropdown regioni, province, comuni

http://www.joomla.it/e-ancora/articoli-community-3x/8172-form-e-campi-dropdown-dinamici-con-chronforms-e-ajax.html
: Re:da text box a dropdown dinamico
: Ago_ 22 Nov 2016, 12:59:44
E'nel mio articolo sulle dropdown regioni, province, comuni

http://www.joomla.it/e-ancora/articoli-community-3x/8172-form-e-campi-dropdown-dinamici-con-chronforms-e-ajax.html (http://www.joomla.it/e-ancora/articoli-community-3x/8172-form-e-campi-dropdown-dinamici-con-chronforms-e-ajax.html)

quindi teoricamente dovrei rimuovere dall'ajax il dbread sulla seconda tabella (province) e lasciare il custom code adeguatamente modificato con il modelID del primo dbread (la cosa piu difficile non essendo un programmatore)

:
<?php
$results 
= array();
$results[] = 'Seleziona agente';
foreach ( 
$form->data['legge'] as $v ) {
  
$results[$v['idAgente']]=$v['nomeAgente'];
}
echo 
json_encode($results);
?>
: Re:da text box a dropdown dinamico
: Ago_ 23 Nov 2016, 09:42:37
ho risolto la situazione lavorando sulle tabelle, ho tenuto i 3 dropdown dinamici e modificato la tabella facendo in modo che ogni relazione cliente--Agente e agente-->responsabile abbia n ID quante sdono el relazioni tra di essi. un modo molto ortodosso ma funzionale.