In einem Hook im eigenen Modul, wie kann ich ein array verändern?
am 12.09.2012 - 12:23 Uhr in
Hallo Ihr,
bin gerade dabei ein Modul zum Forum zu programmieren. Möchte dazu einige Parameter die bereits in der Variable $node gespeichert sind verändern.
Jetzt die Frage wie??? Kann ich einfach die Werte überschreiben und dann werden diese automatisch so in die Datenbank übernommen??
Oder muss ich die einzelen Variablen abfangen und eigene SQL Statements daraus bauen um die Datenbank zu ändern?
Hab ein Modul und will dadrin wenn ein neuer Beitrag im Forum gepostet wird einige Werte verändern.
Also:
<?php
function testkanickel_node_insert($node)
{
$node->title = "Testueberschrift";
debug($node);
}
?>im Debug scheints ja zu klappen, nur in der Datenbank taucht es so nicht auf.
stdClass::__set_state(array(
'uid' => '1',
'name' => 'admin',
'type' => 'forum',
'language' => 'und',
'title' => 'Testueberschrift',
'status' => 1,
'promote' => 0,
..
..
..
Könnt ihr mir da weiterhelfen?
Gruß
-Patrick
- Anmelden oder Registrieren um Kommentare zu schreiben

Hast Du Dir die Dokumentation
am 12.09.2012 - 12:45 Uhr
Hast Du Dir die Dokumentation zu [api:hook_node_insert] einmal durchgelesen? Hook_node_insert dient dazu eigene Felder im Node in einer eigenen Tabellen abzulegen. Die dazu nötige Datenbank Abfrage musst Du aber in der Funktion selbst einbauen. Das fehlt bei Dir. Außerdem willst Du den Node-Titel ändern und dafür ist die Funktion eigentlich nicht vorgesehen. Das wäre ein Fall für [api:hook_node_presave].
Beste Grüße
Werner
Dank dir
am 12.09.2012 - 13:37 Uhr
ahh, damit hats jetzt geklappt. Dadrin konnte ich jetzt die Parameter ändern.
Besten dank wiedermal.
Gruß