2017-07-24 1 views
0

Ich habe ein Drupal Registrierungsformular mit grundlegenden Feldern wie Name, E - Mail, etc vorbereitet. Dann habe ich eine Anzeigefunktion erstellt, wo Daten aus der Datenbank ausgewählt und angezeigt werden. Jetzt hat mich mein Lehrer gebeten, den Präprozessor in mein Programm zu integrieren. Wie mache ich das?Mit Vorverarbeitung in Drupal Form

+0

Willkommen bei Stack Overflow, bitte nehmen Sie sich etwas Zeit für die [Willkommenstour] (https://Stackoverflow.com/tour), um sich hier auskennen (und auch um Ihr erstes Abzeichen zu verdienen), lesen Sie, wie [Erstellen Sie ein minimales, vollständiges und überprüfbares Beispiel] (https://stackoverflow.com/help/mcve) und prüfen Sie auch [Wie Sie gute Fragen stellen können] (https://stackoverflow.com/help/how-to-ask), so erhöhen Sie Ihre Chancen, Feedback und nützliche Antworten zu erhalten. –

Antwort

0

Ihre Frage ist nicht sehr klar, wie welche Version von Drupal verwenden Sie und wie haben Sie Webform, mit Back-End-Schnittstelle oder aus Code erstellt und ich denke, Sie werden einige Stimmen für Ihre Frage abholen, aber Ich werde versuchen, trotzdem zu helfen.

Also, Drupal verwendet so genannte "Haken" -System. Sie haben einige Prozesse, wie Web-Formular-Kreationen und es ist aus mehreren Schritten gemacht. An einigen Punkten (d. H. Zwischen diesen Schritten) können Sie den Prozess unterbrechen, den Code selbst ausführen lassen und dann den Prozess mit normalem Fluss fortsetzen lassen.

Möglichkeit, das zu tun, indem Sie Ihre eigenen Hooks-Funktionen erstellen. Sie müssen Ihr Modul erstellen (einige können sogar aus der Datei template.php des Themas funktionieren), dann erstellen Sie die Hook-Funktion innerhalb der Moduldatei, geben Sie einen bestimmten Namen, um einige Standards zu erfüllen, löschen Sie das Geld und Drupal kümmert sich um Ihre Hook-Funktion wenn das entsprechende Ereignis eintritt.

Der Haken Sie wahrscheinlich zu schaffen haben, ist:

https://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_form_alter/7.x

Also, wenn Ihr Modul aufgerufen wird, das heißt „Saikat“ (es ist Computername) Sie Funktion namens erstellen müssen:

Dieser Hook wird für jede Form aufgerufen, die Sie auf Ihrer Website haben, also prüfen Sie auf $ form_id value, um Ihre Formular-ID zu ändern, nur Ihre Form und andere nicht zu ändern. Und vergessen Sie nicht, den Cache zu löschen.