Fehlermeldung
Eingetragen von imdse (25)
am 17.02.2008 - 10:51 Uhr in
am 17.02.2008 - 10:51 Uhr in
Hallo
bisher habe ich in diesem Forum viele hilfreiche Tipps gefunden, jetzt aber komme ich nicht mehr weiter.
Meine Drupalseite läuft eigentlich fehlerfrei, nur die Acidfree-Gallerie konnte ich jetzt nicht installieren. Dabei habe ich bemerkt, dass meine Logs seit Wochen bei jedem Seitenaufruf 3 Fehlermeldungen erscheinen:
- Invalid argument supplied for foreach() in /homepages/39/d39437927/htdocs/skhor.de/medizin/modules/node/node.module in Zeile 521.
- implode() [function.implode]: Bad arguments. in /homepages/39/d39437927/htdocs/skhor.de/medizin/modules/node/node.module in Zeile 525.
- You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 query: SELECT n.nid, n.vid, n.type, n.status, n.created, n.changed, n.comment, n.promote, n.sticky, r.timestamp AS revision_timestamp, r.title, r.body, r.teaser, r.log, r.format, u.uid, u.name, u.picture, u.data FROM drupal_medizin_node n INNER JOIN drupal_medizin_users u ON u.uid = n.uid INNER JOIN drupal_medizin_node_revisions r ON r.vid = n.vid WHERE in /homepages/39/d39437927/htdocs/skhor.de/medizin/includes/database.mysql.inc in Zeile 172.
Diese Meldungen versteh ich leider gar nicht. Wie kann ich den Fehler beheben? Alle Module sind auf dem neuesten Stand.
Vielen Dank,
Sascha
- Anmelden oder Registrieren um Kommentare zu schreiben
Re: Fehlermeldung
am 17.02.2008 - 11:08 Uhr
Invalid argument supplied for foreach() in /homepages/39/d39437927/htdocs/skhor.de/medizin/modules/node/node.module in Zeile 521.
Ein Modul versucht, einen Node zu laden, übergibt aber weder eine Zahl noch ein Array als erstes Argument der Funktion
node_load
. Die anderen zwei Fehlermeldungen sind unmittelbare Folge des ersten Fehlers.Deaktiviere nacheinander Contrib-Module (d.h. Module die nicht zum Drupal-Kern gehören) und schaue, wann der Fehler verschwindet. Dann hast du das fehlerhafte Modul identifiziert.
--
Re: Fehlermeldung
am 17.02.2008 - 11:26 Uhr
Danke für die schnelle Antwort, aber es hat leider nichts geholfen: Die Fehlermeldungen sind unverändert :(
Re (2): Fehlermeldung
am 18.02.2008 - 00:17 Uhr
OK. Ersetze die Zeile
// Turn the conditions into a query.
in der Datei
modules/node/node.module
durchif (! is_array($param)) { echo '<pre>', debug_backtrace(), '</pre>'; exit; }
Rufe eine der problematischen Seiten auf und sende mir die Ausgabe.
--
Re: Fehlermeldung
am 18.02.2008 - 11:36 Uhr
Die Ausgabe im Webbrowser ist:
Array
Einige Seiten funktionieren nun aber noch, obwohl die Fehlermeldung in den Logs bei JEDEM Seitenaufruf auftritt.
Re (2): Fehlermeldung
am 18.02.2008 - 14:35 Uhr
Die Ausgabe im Webbrowser ist:
Array
Oops. Muss natürlich heißen
if (! is_array($param)) { echo '<pre>', var_export(debug_backtrace(), true), '</pre>'; exit; }
--
array ( 0 => array
am 19.02.2008 - 06:23 Uhr
array (
0 =>
array (
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/includes/common.inc(1352) : eval()\'d code',
'line' => 2,
'function' => 'node_load',
'args' =>
array (
0 => NULL,
),
),
1 =>
array (
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/includes/common.inc',
'line' => 1352,
'function' => 'eval',
),
2 =>
array (
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/modules/block/block.module',
'line' => 682,
'function' => 'drupal_eval',
'args' =>
array (
0 => 'type==\'book\') {
return TRUE;
}
?>',
),
),
3 =>
array (
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/includes/theme.inc',
'line' => 1018,
'function' => 'block_list',
'args' =>
array (
0 => 'left',
),
),
4 =>
array (
'function' => 'theme_blocks',
'args' =>
array (
0 => 'left',
),
),
5 =>
array (
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/includes/theme.inc',
'line' => 170,
'function' => 'call_user_func_array',
'args' =>
array (
0 => 'theme_blocks',
1 =>
array (
0 => 'left',
),
),
),
6 =>
array (
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/themes/engines/phptemplate/phptemplate.engine',
'line' => 170,
'function' => 'theme',
'args' =>
array (
0 => 'blocks',
1 => 'left',
),
),
7 =>
array (
'function' => 'phptemplate_page',
'args' =>
array (
0 => '
Re: array ( 0 => array
am 19.02.2008 - 10:45 Uhr
// ...
'file' => '/homepages/39/d39437927/htdocs/skhor.de/medizin/modules/block/block.module',
'line' => 682,
'function' => 'drupal_eval',
'args' =>
array (
0 => 'type==\'book\') {
return TRUE;
}
?>'
// ...
Du hast einen Block (wahrscheinlich "Book navigation") so konfiguriert, das er nur dann angezeigt werden soll, wenn der von dir eingebene PHP-Quelltext den Wert TRUE ergibt. Der PHP-Quelltext, den du dazu verwendest, verursacht den Fehler.
--
Danke, ich hatte einen
am 19.02.2008 - 21:50 Uhr
Danke, ich hatte einen eigenen Block gebaut, der nur mit bestimmten Node-Typen (z.B. book) angezeigt werden sollte:
<?php
$node=node_load(arg(1));
if ($node->type=='book') {
return TRUE;
}
?>
Obwohl er scheinbar funktionierte, verursachte er die Fehlermeldung. So geht's also nicht! Jetzt such ich mal nach einer anderen Möglichkeiten, Blöcke nur mit bestimmten Node-Typen anzuzeigen - ich glaube, ich habe mal von einer Kombination aus CCK-Feld und Views gelesen.
Grüße
Sascha
So funktioniert es erst mal
am 19.02.2008 - 22:08 Uhr
So funktioniert es erst mal wieder:
<?php
if (arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
if ($node->type == 'book') {
return TRUE;
}
}
?>
Dank an dieses Forum!