[gelöst] Node-load bringt nicht das gewünschte Ergebnis
am 27.10.2010 - 19:40 Uhr in
[gelöst]
Hallo kann mir jmd. erklären, warum meine node_load() Funktion im Falle von update bzw. case update:
nicht den Node, den ich mit:
$temp_ref = node_load($node->reviewed_nid);
hier 264
angegeben habe lädt, sondern immer beim aktuellen Node nid=277 bleibt.
Struktur von 'nodereview' ist:
*
nid (String, 3 characters ) 277
*
vid (String, 3 characters ) 277
*
uid (String, 1 characters ) 1
*
created (Integer) 1287954361
*
type (String, 10 characters ) nodereview
*
language (String, 2 characters ) de
*
changed (Integer) 1288204664
*
reviewed_nid (String, 3 characters ) 264
*
title (String, 5 characters ) zvuol
*
reviews (Array, 6 elements)
o
5 (Array, 2 elements)
+
score (String, 2 characters ) 60
+
review (String, 0 characters )
o
1 (Array, 2 elements)
+
score (String, 3 characters ) 100
+
review (String, 0 characters )
o
4 (Array, 2 elements)
+
score (String, 3 characters ) 100
+
review (String, 0 characters )
o
2 (Array, 2 elements)
+
score (String, 2 characters ) 90
+
review (String, 0 characters )
o
3 (Array, 2 elements)
+
score (String, 3 characters ) 100
+
review (String, 0 characters )
o
6 (Array, 2 elements)
+
score (String, 2 characters ) 80
+
review (String, 3 characters ) thh
*
format (Integer) 0
*
revision (Integer) 0
*
name (String, 5 characters ) admin
*
date (String, 25 characters ) 2010-10-24 23:06:01 +0200
*
status (Integer) 1
*
promote (Integer) 1
*
sticky (Integer) 0
*
subscriptions_notify (Integer) 1
*
op (String, 9 characters ) Speichern
*
submit (String, 9 characters ) Speichern
*
preview (String, 8 characters ) Vorschau
*
delete (String, 8 characters ) Löschen
*
form_build_id (String, 37 characters ) form-e522e25db6f2912fd547f9719525d143
*
form_token (String, 32 characters ) 39168f91d65c1027ff3f2a0ce3996979
*
form_id (String, 20 characters ) nodereview_node_form
*
comment (String, 1 characters ) 2
*
menu (Array, 13 elements)
o
mlid (Integer) 0
o
module (String, 4 characters ) menu
o
hidden (Integer) 0
o
has_children (Integer) 0
o
customized (Integer) 0
o
options (Array, 0 elements)
o
expanded (Integer) 0
o
parent_depth_limit (Integer) 8
o
link_title (String, 0 characters )
o
parent (String, 15 characters ) primary-links:0
o
weight (String, 1 characters ) 0
o
plid (String, 1 characters ) 0
o
menu_name (String, 13 characters ) primary-links
*
path (String, 0 characters )
*
pathauto_perform_alias (Integer) 0
*
teaser (String, 0 characters )
*
validated (Boolean) TRUE
*
is_new (Boolean) FALSE
*
body (String, 0 characters )
*
timestamp (Integer) 1288204664
function unlink_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
$temp = &$node;
$temp_ref = node_load($node->reviewed_nid);
$time = time();
switch ($op) {
// case 'load':
// break;
case 'view':
if($node->type == 'nodereview' && $node->build_mode == 'full') {
drupal_goto("node/". $node->reviewed_nid);
}
break;
// case 'alter':
// if($node->type == 'nodereview') {
// node_load($node->reviewed_nid);
// $node->changed = time();
// node_load($temp);
// drupal_goto("node/". $node->reviewed_nid);
// node_load($node->reviewed_nid);
// break;
// }
// case 'insert':
// The node is being created (inserted in the database).
// break;
case 'update':
if($node->type == 'nodereview') {
node_load($temp_ref);
// dpm($node);
$node->changed = time();
node_load($temp);
drupal_goto("node/". $node->reviewed_nid);
break;
}
/* case 'validate':
// if($node->type == 'nodereview' ) {
// drupal_set_message('Hallo',error);
//node_load($node->reviewed_nid);
// dpm($node);
// $node->changed = time();
// node_load($temp);
// dpm($node);
// drupal_goto("node/". $node->reviewed_nid);
// node_load($node->reviewed_nid);
break;
}
*/
// case 'delete':
// The node is being deleted.
// break;
}
}
- Anmelden oder Registrieren um Kommentare zu schreiben
Und wie genau hat sich das
am 28.10.2010 - 00:13 Uhr
Und wie genau hat sich das ganze nun gelöst?
Und wie genau hat sich das
am 28.10.2010 - 00:39 Uhr
Hi Exterior,
ich habe vergessen den Rückgabewert der Funktion Node_load in der $node Variable zu speichern.
Mit
$node = node_load(temp_ref->nid);
hat es dann geklappt, hat aber gedauert bis ich darauf gekommen bin.
Hoffe das beantwortet deine Frage.
Danke für eure Unterstützung
Dennis605
Auf jeden Fall ;-) Es ist nur
am 28.10.2010 - 08:31 Uhr
Auf jeden Fall ;-)
Es ist nur immer unschön, wenn ein Thread als gelöst markiert ist und nirgendwo steht die Lösung, das ärgert dann immer die Leute, die nach einer Lösung suchen, deinen Thread finden und dann steht da nichts ;-)