Domande su form e ordinamenti dati provenienti da db

2 contenuti / 0 new
Ultimo contenuto
Domande su form e ordinamenti dati provenienti da db

Ciao a tutti,

volevo sapere se è possibile, tramite le funzioni di drupal, realizzare un controllo di accesso per ogni campo di un form inserito.

Mi spiego: devo fare una pagina con dati estratti da un db, dove a seconda del proprio permesso di accesso gli utenti possono leggere oppure modificare gli stessi dati.

Inoltre:

quali sono funzioni apposta per avere listing di tabelle con intestazioni cliccabili che provvedono a fare l'ordinamento dei risultati? Ho visto che anche su drupaldocs quasi tutte le pagine hanno questa feature, quando mostrano elenchi.

Grazie,
Panathos

Con la 4.7 puoi usare:

function nomemodulo_nomeform_validate($form_id, $form_values) {
quì metti il codice di validazione e l'errore da stampare
}

function nomemodulo_nomeform_submit($form_id, $form_values) {
quì metti il codice di inserimento
}

Tabelle:
// Costruisci i titoli da mostrare

$header = array(

array('data' => t('Nome/Ragione Sociale'), 'field' => 'nome', 'sort' => 'desc'),

array('data' => t('Citta\''), 'field' => 'citta'),

array('data' => t('P.IVA/Cod. Fiscale'), 'field' => 'codicefiscale'),

t('Mostra'),

t('Elimina'),

);

// Costruisci la query

$sql = 'SELECT

id,

nome,

citta,

codicefiscale

FROM {gest_soggetto}

'.$condition.tablesort_sql($header);

// Applica la query (paginata)

$result = pager_query($sql, 50);

while ($soggetto = db_fetch_object($result)) {

$rows[] = array(

$soggetto->nome,

$soggetto->citta,

$soggetto->codicefiscale,

l(t('Dettaglio'), '/soggetto/'.$soggetto->id.'/modifica/anagrafica', NULL ),

l(t('Cancella'), '/soggetto/'.$soggetto->id.'/modifica/cancella', NULL ),

);

}

// Temizzazione della tabella e titoli

$output .= theme('table', $header, $rows);

// Temizzazione della pagina

$output .= theme('pager', NULL, 10, 0, tablesort_pager());

return $output;

}