Warum speichert diese Form nicht in die DB ab??

am 03.11.2012 - 15:13 Uhr in
Hallo da draußen, vielleicht weiß ja einer das so on-the-fly:
ich bau gerade mein erstes Modul in drupal selbständig. Und genauso gut funktioniert es auch ...
Anfang ist Erstellung einer Form um nodes einzufügen. Habe mir dafür das node-example Modul installiert und einiges durchgearbeitet.
Aber: Da scheinen mir noch ein paar Basics zu fehlen.
Modulname: test
code:
function test_menu() {
$items = array();
$items['test/form'] = array(
'title' => t('My form'),
'page callback' => 'test_form',
'access arguments' => array('access content'),
'description' => t('My form'),
'type' => MENU_CALLBACK,
);
return $items;
}
function test_form() {
return drupal_get_form('test_my_form');
}
function test_my_form($form_state) {
// This is the first form element. It's a textfield with a label, "Name"
$form['title'] = array(
'#type' => 'textfield',
'#title' => check_plain($type->title_label),
'#required' => TRUE,
'#default_value' => $node->title,
'#weight' => -5
);
//// Adds a simple submit button that refreshes the form and clears its
//contents -- this is the default behavior for forms.
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Submit',
);
return $form;
}
function test_insert($node) {
db_query("INSERT INTO {node} (vid, nid) VALUES (%d, %d)", $node->vid, $node->nid);
}
Ergebnis aus Firebug -folgende Postdatei wird gesendet:
form_build_id form-f0e679c0f42012048763a185f2ca7987
form_id test_my_form
form_token 7228d9756aa80afaa41314333f1ae19c
op Submit
title egal
title=egal&op=Submit&form_build_id=form-f0e679c0f42012048763a185f2ca7987&form_token=7228d9756aa80afaa41314333f1ae19c&form_id=test_my_form
Aber: da erscheint nichts in der DB... muss ich da vorher noch den content-type bestimmen oder so??
Danke vorab,
maen
- Anmelden oder Registrieren um Kommentare zu schreiben
Diesem Thema ist in
am 06.11.2012 - 16:42 Uhr
Diesem Thema ist in entsprechenden Büchern mindestens ein Kapitel gewidmet und das hier auszuführen geht über dieses Forum hinaus. Nur soviel: bei einem Node-Modul, mußt Du bestimmte Funktionen implementieren und dafür auch festgelegte Namenskonventionen einhalten, sonst weiß Drupal nicht, daß es sich um ein Node-Formular handelt und speichert dementsprechend auch nichts.
Beste Grüße
Werner
Verlinkung wäre dann aber doch schön!
am 06.11.2012 - 17:50 Uhr
Ich habe mir das example Modul geladen, um das zu lernen. Aber nüschts davon ist für mich. Dann habe ich so ziemlich alles was mit node_save und node_load zu tun hat druchgelesen. Mit würde es ja reichen wenn wenigstens eine Quelle gelinkt würde die so was macht. Affen lernen halt durch Imitation....
Bitte sei so gut und linke mal so was.
Danke vorab,
maen
Buch: Pro Drupal 7
am 06.11.2012 - 18:19 Uhr
Buch: Pro Drupal 7 Development, Seite 140-154
Sorry, aber für so was brauche auch ich ein Buch. Ansonsten kannst Du das Node-Modul auseinander nehmen, da sollte alles drin sein.
Beste Grüße
Werner