Webform

Webform Einträge durchsuchen

Bei umfangreichen Webform-Formularen und über 100 Einträgen (Submissions) wird es schwer gezielt Einträge wiederzufinden. Deswegen habe ich mal angefangen ein Minimodul zu erstellen das den hook_search von Drupal nutzt um die Daten der Webformeinträge zu durchsuchen.

Mit folgender Funktion lassen sich bereits eingegebene Daten finden. Um die Webform-Suche zu nutzen muss die Funktion in ein eigenes Modul gepackt und über Drupal aktiviert werden. Dann findet man in der Drupalsuche einen neuen Reiter "Webform".

<?php
function webform_search($op = 'search', $keys = NULL) {
  switch (
$op) {
    case
'name':
      if (
user_access('access webform results')) {
        return
t('Webform');
      }
    case
'search':
     
$find = array();
     
// Replace wildcards with MySQL/PostgreSQL wildcards.
     
$keys = preg_replace('!\*+!', '%', $keys);
     
$query = "SELECT s.sid, s.nid, GROUP_CONCAT(sd.data) as data
        FROM {webform_submissions} s
        LEFT JOIN {webform_submitted_data} sd ON sd.sid = s.sid
        WHERE LOWER(data) LIKE LOWER('%%%s%%')
        GROUP BY s.sid"
;
     
$result = pager_query($query, 15, 0, NULL, $keys);
     
      while (
$submission = db_fetch_object($result)) {
       
$find[] = array('title' => t('Submission #') . $submission->sid, 'link' => url('node/'. $submission->nid . '/submission/' . $submission->sid, NULL, NULL, TRUE));
      }
      return
$find;
  }
}
?>

Die Funktion ist allerdings nur ein erster Entwurf, es fehlen noch Zugriffsbeschränkungen, etc. Smiling

Umfangreiche Kontaktformulare mit Webform

Um Formulare aller Art zu erstellen, lohnt ein Block auf das Modul "Webform" (http://drupal.org/project/webform). Mit diesem Ist es möglich verschiedene Felder und Feldarten zu einem Formular zusammen zuklicken.

Für neu erstelle Drupalseite empfehlen ich den Einstieg bei Version 2 zu machen, dort sind etliche Verbesserungen (Felder in Tabs, Emaileinstellunegn für Felder, etc.) bereits enthalten.

Syndicate content