Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Modul-Entwicklung ›

drupalCreateNode oder anderes um PHP Code auf der Node auszugeben.

Eingetragen von Julsen (178)
am 08.07.2013 - 09:46 Uhr in
  • Modul-Entwicklung
  • Drupal 7.x

Guten Tag zusammen,

wollte mal ein eigenes Modul erstellen. In erster Linie wollte ich ein größeres Formular für diverse Rechenoperatoren erstellen. Angefangen hatte ich es über den form Hook zu realisieren. Hat auch ganz gut geklappt, leider bin ich so recht zügig an die Grenzen gestoßen. Nun habe ich das Formular in PHP erstellt und wollte es jetzt in mein Modul einbetten. Meine Frage wäre jetzt nur, wie kann ich meinen PHP Code auf die Node laden bzw. auf dieser ausführen lassen ohne auf das PHP Modul von Drupal zurückzugreifen??

Hatte die Funktion

return $this->drupalCreateNode(array('body' => array(LANGUAGE_NONE => array(array('value' => '<?php print "Test"; ?>')))));
  }

gefunden.

Leider klappt es nicht und die Seite funktioniert danach nicht mehr. Eine einfach ausgabe bringt das Formular nur komplett über den Content und nicht an die richtige Stelle. Den Pfad, Access usw. habe ich über hook_menu geregelt.

Viele Grüße
Julsen

‹ Formular mit POST an andere Seite schicken, hook_menu() Frage Feeds - Nodes mit Taxonomien importieren ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn Du vernünftig mit

Eingetragen von wla (9466)
am 08.07.2013 - 11:03 Uhr

Wenn Du vernünftig mit eigenen Modulen in Drupal arbeiten willst, mußt Du Dich mit der Drupal API vertraut machen. Das geht nicht in einem Tag, sondern ist ein etwas längerer Prozess mit einigem an Try and Error. Besorge Dir das Buch "Pro Drupal 7 Development", dann hast Du schon mal einen guten Startpunkt.
Hook_form ist nicht so schwierig, aber lies Dir auf drupal.org die Form-API genau durch. es gibt auch das Example Projekt, in dem Du für viele Anwendungen Beispiel-Module findest. Die kannst Du als Ausgangspunkt für eigene Entwicklung nehmen.
Insgesamt kann ich nur sagen: "Nicht aufgeben, schließlich wurde Rom auch nicht in einem Tag erbaut."

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Besten Dank! Hatte mir jetzt

Eingetragen von Julsen (178)
am 08.07.2013 - 11:25 Uhr

Besten Dank!

Hatte mir jetzt zusätzlich noch page_example angeschaut und versuche es hiermit. Mein Formular hat 50+ Felder, wovon auch teilweise unterschiedlich viele Felder nebeneinander angezeigt werden, keine Ahnung wie ich das hätte anders realisieren können. Das Buch sollte ich mir mal bei Gelegenheit besorgen, sind nur leider nicht gerade günstig für Studenten.

Viele Grüße
Julsen

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich schaue bei solchen

Eingetragen von wla (9466)
am 08.07.2013 - 11:54 Uhr

Ich schaue bei solchen Büchern immer bei Amazon und dann in der Rubrik andere Angebote. Da wird das Buch schon deutlich günstiger angeboten (z.Zt. für € 28,01 bei Lieferung aus England + € 3.- Versand).
Evtl. ist es für dich einfacher einen neuen Datentyp anzulegen mit den entsprechenden Feldern. Dann hast Du Dein Formular auch schon definiert. Die Anordnung der Felder im Eingabeformular kannst Du gut mit der Display Suite und dort dem Modul Display Suite Forms erzielen. Du definierst dabei unter Felder verwalten erst ein Layout, sicherst es und kannst Dann die Felder in dem Layout anordnen. Für die Feinarbeit braucht es aber immer CSS, auch bei einem eigenen Modul, das das Formular erstellt.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hier

Eingetragen von Julsen (178)
am 08.07.2013 - 13:42 Uhr

Hier http://www.amazon.com/dp/1430228385 gibt es das Buch schon für ca. 20 €.

Viele Grüße
Julsen

//Update:
Habe es jetzt mit menu hook, permission hook und nem callback mit return array('#markup' => t($output)); gelöst, wobei sich alle Daten in der $output Variable befinden :)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die Benutzung der t-Funktion

Eingetragen von wla (9466)
am 08.07.2013 - 13:50 Uhr

Die Benutzung der t-Funktion für Variablen, wie von Dir gezeigt, ist nicht korrekt! Die t-Funktion bekommt nur englische Strings und wenn da Zahlen drin sein sollen, die sich ändern können, gibt es dafür einen entsprechenden Array, in dem die Werte übergeben werden und Placeholder im String. Steht in der API Dokumentation zu t-Funktion. Wenn schon Programmieren, dann auch entsprechend der Coding-Vorgaben von Drupal.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hmm, laut Dokumentation kann

Eingetragen von Julsen (178)
am 08.07.2013 - 15:20 Uhr

Hmm, laut Dokumentation kann ich t nutzen, muss aber bei userinput darauf achten, dass ich keine Sicherheitslücke schaffe. Ich übergebe ja quasi nur Text, welcher sich in der Variable $output befindet an die t Funktion.

Viele Grüße
Julsen

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Best Practices for Plain Text Notes
  • gepatchte PHP Version 7.4 für Windows
  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
Weiter

Neue Kommentare

  • Muss ja nicht genau php 8.3 sein
    vor 22 Stunden 23 Minuten
  • Guten morgen und Danke
    vor 1 Tag 4 Stunden
  • Evtl. versuchen auf PHP 8 zu wechseln
    vor 1 Tag 11 Stunden
  • Danke Schmittrich. Die Frage
    vor 3 Tagen 2 Stunden
  • Keine Antwort auf die Frage nach dem Woher
    vor 3 Tagen 5 Stunden
  • Danke ich werde mir die
    vor 6 Wochen 22 Stunden
  • Vielen Dank für Ihren
    vor 6 Wochen 3 Tagen
  • Composer ist sehr ratsam
    vor 6 Wochen 5 Tagen
  • Vielen Dank für den
    vor 7 Wochen 1 Tag
  • Die alten CMS Vergleiche von contentmanager.de
    vor 7 Wochen 1 Tag

Statistik

Beiträge im Forum: 250324
Registrierte User: 20571

Neue User:

  • alxshell
  • FesObsemo
  • AnthonyhoF

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 13 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association