Drupal : Création d'un tableau

Salut,

L'objectif de ce billet est d'expliquer comment créer afficher un tableau sous Drupal à l'intérieur d'un Formulaire. Par défaut, le tableau dans un formulaire Drupal est utilisé pour choisir ou cocher une ligne. C'est pour cette raison lorsque qu'on l'affiche on voit toujours la première colonne contient des cases à cocher. L’objectif de ce billet est d'essayer d'afficher le tableau sans les cases à cocher. 


Création d'un tableau sous Drupal

Avant de créer le tableau il faut tout d'abord commencer à créer le formulaire. Sous drupal pour créer un formulaire il faut commencer par créer le tableau $form et à la fin retourner la valeur de ce tableau :

$form = array();

Création des différents champs

return $form;

Ensuite on commence à créer nos différents champs

$form = array();

$form['debut-heur'] = array(    // Création d'un champ text
                    '#type' => 'textfield',
                    '#title' => t('Start hour'),
                    '#maxlength' => 10,
                    '#size' => 8,
 );

$form['gps_module'] = array(  // Création d'un champ select
                '#type' => 'select',
                '#title' => t('GPS Module'),
                '#options' => $module_gps_libelle,
                '#weight' => 1,
    );

return $form;

Nous créons maintenant le tableau par défaut dans un formulaire sous Drupal. Pour créer un tableau il faut ajouter la valeur ' tableselect' au paramètre #type.

$form['table'] = array(
                '#type' => 'tableselect',
                '#title' => t('Current affectation table'),
                '#header' => $header,
                '#options' => $rows                
                );

Le tableau obtenu ressemble à celui de l'image suivante :

Tableau Drupal avec case à cocher

Image 1 : Tableau par défaut de Drupal avec case à cocher

On constate très bien que nous avons les cases à cocher. Pour enlever ces cases à cocher il faut ajouter les lignes suivantes en dessous du tableau crée :

foreach( $rows as $key => $value )
{
  $form['table'][$key]['#disabled'] = true;
}

Et ensuite on obtient notre nouveau tableau :

   Tableau Drupal avec case à cocher

Image 2 : Tableau par défaut de Drupal sans case à cocher

 

Code complet

Je vous remte içi le code complet :

$form = array();

$form['debut-heur'] = array(    // Création d'un champ text
                    '#type' => 'textfield',
                    '#title' => t('Start hour'),
                    '#maxlength' => 10,
                    '#size' => 8,
 );

$form['gps_module'] = array(  // Création d'un champ select
                '#type' => 'select',
                '#title' => t('GPS Module'),
                '#options' => $module_gps_libelle,
                '#weight' => 1,
    );

while($row = db_fetch_array($query)) {

 
$rows[$row ['id']] = array(
                            'vehicle'=>$row['vehicle'],
                            'terminal'=>$row['terminal'],
                            'start_date'=>date('d/m/Y',$row['start_date']),
                            'end_date'=>date('d/m/Y',$row['end_date']),
);
}

$header = array('vehicle'=> t('vehicle'), 'terminal'=> t('terminal'), 'start_date'=> t('start_date'),'end_date'=> t('end_date'));

$form['table'] = array(
                '#type' => 'tableselect',
                '#title' => t('Current affectation table'),
                '#header' => $header,
                '#options' => $rows                
                );

foreach( $rows as $key => $value )
{
  $form['table'][$key]['#disabled'] = true;
}

return $form;

Commentaires

<a href=https://maps.google.dz/url?sa=t&url=https://jobs42.ru/blog/rabota-stazhe...работа стажером в москве</a>|
<a href=http://openlink.ca.skku.edu/link.n2s?url=https://jobs42.ru/blog/rabota-b...Работа без опыта с обучением</a>|
<a href=https://images.google.co.ck/url?sa=t&url=https://jobs42.ru/blog/massoviy...массовый подбор линейного персонала</a>|
https://images.google.com.pe/url?sa=t&url=https://jobs42.ru/
<a href=https://images.google.hu/url?sa=t&url=https://jobs42.ru/blog/massoviy_po...массовый подбор линейного персонала</a>|

<a href=https://images.google.cf/url?sa=t&url=https://jobs42.ru/blog/effektivnyj...Эффективный поиск работы</a>|
<a href=https://images.google.kz/url?sa=t&url=https://jobs42.ru/blog/rabota-staz...работа стажером в москве</a>|
<a href=https://images.google.by/url?sa=t&url=https://jobs42.ru/blog/zarplaty_v_...Зарплаты в Новокузнецке</a>|
<a href=https://maps.google.com.ua/url?sa=t&url=https://jobs42.ru/blog/naim_sotr...Найм сотрудников на работу</a>|
<a href=https://images.google.co.id/url?sa=t&url=https://jobs42.ru/blog/rabota-b...Работа без опыта с обучением</a>|

https://dolevka.ru/redirect.asp?url=https://jobs42.ru/blog/kadrovye-agen...
<a href=https://images.google.com.hk/url?sa=t&url=https://jobs42.ru/blog/naim_so...Найм сотрудников на работу</a>|
https://images.google.com.tw/url?sa=t&url=https://jobs42.ru/blog/gruzchi...
<a href=https://images.google.ie/url?sa=t&url=https://jobs42.ru/blog/kak_vesti_s...Как вести себя на собеседовании при приеме на работу</a>|
https://maps.google.com.ag/url?sa=t&url=https://jobs42.ru/blog/kak-povys...

<a href=https://images.google.kg/url?sa=t&url=https://jobs42.ru/blog/najti-rabot...Найти работу в Новокузнецке</a>|
<a href=https://images.google.ba/url?sa=t&url=https://jobs42.ru/blog/zarplaty_v_...Зарплаты в Новокузнецке</a>|
<a href=http://barca.ru/goto.php?url=http://perevod42.com/>В кризис многие потеряли работу</a>|
http://www.vladinfo.ru/away.php?url=https://jobs42.ru/blog/rabota-bez-op...
https://images.google.td/url?sa=t&url=https://jobs42.ru/blog/rabota_bez_...

<a href=https://maps.google.com.qa/url?sa=t&url=https://jobs42.ru/blog/rabota-st...работа стажером в москве</a>|
https://maps.google.cv/url?sa=t&url=https://jobs42.ru/blog/top10_visokoo...
<a href=https://images.google.co.ug/url?sa=t&url=https://jobs42.ru/blog/massoviy...массовый подбор линейного персонала</a>|
https://maps.google.com.bh/url?sa=t&url=https://jobs42.ru/
https://maps.google.ee/url?sa=t&url=https://jobs42.ru/blog/raznorabochij...

https://images.google.es/url?sa=t&url=https://jobs42.ru/blog/raznoraboch...
https://images.google.co.id/url?sa=t&url=https://jobs42.ru/blog/kak-povy...
<a href=https://images.google.nr/url?sa=t&url=https://jobs42.ru/blog/rabota-staz...работа стажером в москве</a>|
<a href=https://images.google.tl/url?sa=t&url=https://jobs42.ru/blog/v_krizis_mn...В кризис многие потеряли работу</a>|
<a href=https://images.google.ps/url?sa=t&url=https://jobs42.ru/blog/naim_sotrud...Найм сотрудников на работу</a>|

https://images.google.bt/url?sa=t&url=https://jobs42.ru/blog/kadrovye-ag...
<a href=https://maps.google.be/url?sa=t&url=https://jobs42.ru/blog/kak_vesti_seb...Как вести себя на собеседовании при приеме на работу</a>|
<a href=https://images.google.mu/url?sa=t&url=https://jobs42.ru/blog/professiya-...Профессия продавец кассир</a>|
https://images.google.com.tj/url?sa=t&url=https://jobs42.ru/blog/rabota-...
https://maps.google.com.kw/url?sa=t&url=https://jobs42.ru/blog/rabota-va...

https://maps.google.by/url?sa=t&url=https://jobs42.ru/blog/rabota-bez-op...
<a href=https://images.google.iq/url?sa=t&url=https://jobs42.ru/blog/kak_vesti_s...Как вести себя на собеседовании при приеме на работу</a>|
https://maps.google.co.in/url?sa=t&url=https://jobs42.ru/blog/menedzher-...
<a href=https://images.google.co.kr/url?sa=t&url=https://jobs42.ru/blog/naim_sot...Найм сотрудников на работу</a>|
http://imsprice.ru/go.php?url=https://jobs42.ru/blog/sobesedovanie_s_men...

<a href=https://images.google.ae/url?sa=t&url=https://jobs42.ru/blog/rabota-bez-...Работа без опыта с обучением</a>|
<a href=https://images.google.ws/url?sa=t&url=https://jobs42.ru/blog/rabota-bez-...Работа без опыта с обучением</a>|
https://maps.google.com.sg/url?sa=t&url=https://jobs42.ru/blog/kak_vibra...
<a href=https://maps.google.com.ua/url?sa=t&url=https://jobs42.ru/blog/rabota-be...Работа без опыта с обучением</a>|
<a href=https://maps.google.com.pa/url?sa=t&url=https://jobs42.ru/blog/v_krizis_...В кризис многие потеряли работу</a>|

<a href=https://images.google.co.zm/url?sa=t&url=https://jobs42.ru/blog/najti-ra...Найти работу в Новокузнецке</a>|
<a href=https://images.google.so/url?sa=t&url=https://jobs42.ru/blog/kak_vesti_s...Как вести себя на собеседовании при приеме на работу</a>|
<a href=https://images.google.com.nf/url?sa=t&url=https://jobs42.ru/blog/naim_so...Найм сотрудников на работу</a>|
https://images.google.ne/url?sa=t&url=https://jobs42.ru/
https://images.google.tn/url?sa=t&url=https://jobs42.ru/blog/sobesedovan...

<a href=https://images.google.co.mz/url?sa=t&url=https://jobs42.ru/blog/najti-ra...Найти работу в Новокузнецке</a>|
<a href=https://images.google.com.ec/url?sa=t&url=https://jobs42.ru/blog/zarplat...Зарплаты в Новокузнецке</a>|
https://maps.google.co.ke/url?sa=t&url=https://jobs42.ru/blog/kak_vibrat...
<a href=https://images.google.ru/url?sa=t&url=https://jobs42.ru/blog/rabota-bez-...Работа без опыта с обучением</a>|
https://images.google.cz/url?sa=t&url=https://jobs42.ru/blog/kak-povysit...

https://images.google.it/url?sa=t&url=https://jobs42.ru/blog/rabota-bez-...
https://maps.google.ci/url?sa=t&url=https://jobs42.ru/blog/kto_takoy_rek...
<a href=https://images.google.gm/url?sa=t&url=https://jobs42.ru/blog/massoviy_po...массовый подбор линейного персонала</a>|
https://images.google.fr/url?sa=t&url=https://jobs42.ru/blog/rabota_bez_...
<a href=https://images.google.co.mz/url?sa=t&url=https://jobs42.ru/blog/kak_vest...Как вести себя на собеседовании при приеме на работу</a>|

<a href=https://images.google.fm/url?sa=t&url=https://jobs42.ru/blog/naim_sotrud...Найм сотрудников на работу</a>|
https://maps.google.co.uk/url?sa=t&url=https://jobs42.ru/blog/gruzchik-s...
<a href=https://images.google.com.mt/url?sa=t&url=https://jobs42.ru/blog/profess...Профессия продавец кассир</a>|
https://images.google.sr/url?sa=t&url=https://jobs42.ru/
<a href=https://maps.google.com.tr/url?sa=t&url=https://jobs42.ru/blog/kak_vesti...Как вести себя на собеседовании при приеме на работу</a>|

https://maps.google.ge/url?sa=t&url=https://jobs42.ru/blog/top10_visokoo...
<a href=https://maps.google.com.kh/url?sa=t&url=https://jobs42.ru/blog/rabota-be...Работа без опыта с обучением</a>|
https://images.google.je/url?sa=t&url=https://jobs42.ru/blog/kto_takoy_r...
<a href=https://images.google.com.ai/url?sa=t&url=https://jobs42.ru/blog/kak_ves...Как вести себя на собеседовании при приеме на работу</a>|
<a href=https://images.google.lv/url?sa=t&url=https://jobs42.ru/blog/najti-rabot...Найти работу в Новокузнецке</a>|

Pages

Ajouter commentaire

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
CAPTCHA
La question est pour vérifier si vous êtes un robot ou humain afin de se prévenir des spams.