ConPresso Community

Fragen, Antworten, Diskussionen rund um das Content Management System ConPresso

 
Sitemap: Warning: Cannot use a scalar value as an array

 
Neue Antwort erstellen    ConPresso Community Foren-Übersicht -> Modul Menu (ConPresso 4)
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
leh00
ConPresso-Newbie


Anmeldungsdatum: 29.05.2008
Beiträge: 13

BeitragVerfasst am: 24.09.2010 15:38    Titel: Sitemap: Warning: Cannot use a scalar value as an array Antworten mit Zitat

Hallo Zusammen,

ich habe meine 4.0.7'ner Version von Compresso auf 4.1.2 umgestellt. Datenbank und Web sind soweit ok - jedoch bekomme ich die Sitemap mit dem mod_Menu nicht hin...

Ich möchte gerne die Sitemap unterhalb eines Artikels (Hinweis/Erklärung) im Hauptinhaltsbereich der Webseite in einer eigenen Rubric ausgeben.

Bisher habe ich das mittels:

require(CPO_BASEDIR.$activeModules['Menu']['directory'].'/includes/sitemap.inc.php');

in der Index.php diese speziellen Rubric ohne Probleme gemacht.

Seit der Installation von Compresso 4.1.2 und des mod_Menu 4.1 (auch mit mod_Menu RC)1 habe ich folgendes Problem:

Wenn ich aus der Index.php in einem andern Rubric-Verzeichnis:

require(CPO_BASEDIR.$activeModules['Menu']['directory'].'/includes/sitemap.inc.php');

aufrufe, erhalte ich immer folgende Fehlermeldungen (eine pro Zeile in der Sitemap)

Warning: Cannot use a scalar value as an array in /volume1/web/s412/_mod_menu/includes/inc_build_nav.inc.php on line 115

nach erfolgter Ausgabe der Fehler wird die Sitemap korrekt ausgegeben...

Irgend eine Idee warum die Zuweisung beim Array auf Linie 115 nicht mehr klappt?

Wenn ich http://www.meineseite.com/_mod_menu aufrufe wird die Sitemap korrekt angegeben.

Danke und Gruss
Leh00
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6988

BeitragVerfasst am: 24.09.2010 16:02    Titel: Antworten mit Zitat

Zitat:
Ich möchte gerne die Sitemap unterhalb eines Artikels (Hinweis/Erklärung) im Hauptinhaltsbereich der Webseite in einer eigenen Rubric ausgeben.

Das bietet die mod_menu/index.php (in Version 4.1) ja bereits.
Jetzt nur noch eine Rubrik erstellen mit mod_menu als Verzeichnis, Artikel schreiben, fast fertig.
Nur noch "Artikel ausgeben" auf was anderes als "keine" einstellen.

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
leh00
ConPresso-Newbie


Anmeldungsdatum: 29.05.2008
Beiträge: 13

BeitragVerfasst am: 28.09.2010 16:24    Titel: Antworten mit Zitat

Hallo Markus,

besten Dank für deine Antwort.

Ich hatte erst Heute wieder Zeit mich um dieses Problem zu kümmern.

Die Sache sieht so aus:
- _mod_menu als Rubric -> klappt wunderbar

- wenn ich einen Artikel einfüge und oberhalb der Sitemap anzeige, kommen wieder all die Fehlermeldungen...

- wenn ich einen Artikel unterhalb der Sitemap anzeige, klappt alles...

- wenn ich innerhalb der Seite dieses Codeschnipsel einfüge, kommen auch all die Fehlermeldungen:
Code:
// ab hier nix mehr ändern
if (!defined('CPO')) exit;

$query = "SELECT rubric_id, commentary, verfallsdatum, templates_id, nr, idx, email, autor, pub_datum, titel, initial, freigabe, changer FROM " . CPO_NEWS . " WHERE " . ( $cpoSystem['release'] ? "artikel_archiv<2 AND freigabe=" . STATE_RELEASED : "artikel_archiv<1 AND freigabe!=" . STATE_BLOCKED ) . " AND pub_datum<='" . date('Y-m-d H:i:s', time()) . "' AND verfallsdatum>='".date('Y-m-d H:i:s', time())."' AND rubric_id='".$rubrikid."' ORDER BY ".$sortierung." LIMIT 0," . $artikelanzahl . " ";
$db = new DB;
$db->query($query);


while($db->next_record()) {
    $db_template      = $db->v('templates_id');
    $db_nr            = $db->v('nr');
    $db_idx           = $db->v('idx');
    $db_email         = $db->v('email');
    $db_autor         = $db->v('autor');
    $db_changer       = $db->v('changer');
    $db_pub_datum     = $db->v('pub_datum');
    $db_verfallsdatum = $db->v('verfallsdatum');
    $db_commentary    = $db->v('commentary');
    $db_titel         = $db->v('titel');
    $db_initial       = $db->v('initial');
    $db_freigabe      = $db->v('freigabe');
    $db_rubric_id     = $db->v('rubric_id');
    require(CPO_BASEDIR.'_include/select_template.php');
}

Dieses Schnipsel habe ich für die Ausgabe bestimmter News drin...

Hast du noch eine Idee ?

Danke und Gruss
Leh00
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6988

BeitragVerfasst am: 28.09.2010 17:16    Titel: Antworten mit Zitat

Sorry, im Augenblick bin ich nicht dazu in der Lage so theoretische Diskussionen zu führen.

Warum muß ich eigentlich erraten, was in der Zeile steht, die den Fehler produziert, was Du sonst noch so installiert hast und welche Modifizierungen sonst noch im System stecken...

Es wäre ja auch zu einfach, wenn man sich das anschauen könnte und man einfach ein paar Kontrollausgaben macht. Sooo will das ja keiner. Raten ist viel, viel schöner...

... in drei, vier Wochen habe ich vielleicht wieder Lust dazu...

Der Codeschnipsel alleine muß schon Berge an Fehlern produzieren, wenn das wirklich ALLES ist...

BTW: einer der wichtigsten Leitsätze: "never change a running system"

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
leh00
ConPresso-Newbie


Anmeldungsdatum: 29.05.2008
Beiträge: 13

BeitragVerfasst am: 28.09.2010 19:06    Titel: Antworten mit Zitat

Hallo Markus,

deine Lustlosigkeit kann ich verstehen... Wink

Also ich hab nun mein "schuldiges" Seitenlayout (_local_footer.php/_local_header.php) entfernt und die Menu Rubrik alleine aufgerufen... Geht...

Soweit so gut... einen Artikel mit 3 zeilen Blabla vor die Sitemap gelegt und die Fehler sind wieder da... Artikel hinter die Sitemap... Kein Problem...

Ich hab schon alle Module rausgekippt -> der Fehler bleibt...

Also ich werde mit eine leere, neue 4.1.2 Version von Conpresso installieren und dann das 4.1er mod_menu installieren und dann dem Übel auf den Grund zu gehen...

Gruss
Leh00
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6988

BeitragVerfasst am: 28.09.2010 19:24    Titel: Antworten mit Zitat

Ich kann Dír nur anbieten das Original zu betrachten, um der Sache auf die Spur zu kommen.
Bei mir ist in der Zeile $level das Array. Was ist es bei Dir?
Ich weiß wirklich nicht, was in Deiner Version in dieser Zeile steht.
Das zu sagen wäre ein Anfang...
Du schilderst nur die Symptome, versteckst aber den Patienten.
Ohne vernünftie Anamnese kann das nur Dr. House und der kommt erst in 45 Minuten und dann eine Woche nicht mehr...

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
leh00
ConPresso-Newbie


Anmeldungsdatum: 29.05.2008
Beiträge: 13

BeitragVerfasst am: 28.09.2010 19:52    Titel: Antworten mit Zitat

Also ich hab noch kurz vor'm verzweifeln die Linie 115 mit dem $level auskommentiert... und siehe da es funzt sprich der Fehler liegt auf Zeile 115...

Ich hab mal all die Script's von Conpresso nach $Level durchsucht und diese Variable in verschiedenen Scripts gefunden... (buildpage.inc.php, function.php, inc_menu_function.inc.php, parser.php, PEAR.php, printnavigation.inc.php, Worksheet.php)

Der Scalar-Fehler könnte doch daran liegen, dass die Variable $Level von einem vorherlaufenden Script bsp. als Integer initiert wird -> dann aber in deinem Script als Array angesprochen wird...

Dies führt zu diesem Scalar-Fehler... und das noch alles ohne Dr. Haus oder so...

Wie denkst du darüber?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6988

BeitragVerfasst am: 28.09.2010 20:19    Titel: Antworten mit Zitat

Ich hatte jetzt erst mal den Verdacht des "Rubriken-Recyclings" d.h. mehrfachen Einbindens der gleichen Rubriken, was IMMER zu Fehlern führt.

Du kannst mal ziemlich an den Anfang von
_mod_menu/includes/inc_build_nav.inc.php
folgende Zeile setzen:
Code:
$level = array();


PEAR.php und Worksheet.php gehüren aber nicht zu ConPresso, oder?

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7

 
Für dieses Posting bedanken sich die folgenden User: leh00
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
leh00
ConPresso-Newbie


Anmeldungsdatum: 29.05.2008
Beiträge: 13

BeitragVerfasst am: 28.09.2010 20:27    Titel: [Solved] Cannot use a scalar value as an array Antworten mit Zitat

Hallo Markus,

besten Dank für die Info mit dem
Code:
$level = array();


Nun funzt alles so wie es soll...

Gruss
Leh00
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6988

BeitragVerfasst am: 28.09.2010 20:31    Titel: Antworten mit Zitat

Zitat:
PEAR.php und Worksheet.php gehüren aber nicht zu ConPresso, oder?

Die können eine Fehlerquelle sein, insofern dort z.B. $level als Objekt definiert ist...
Was sind das für Dateien? Zippen und Posten, bitte!

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6988

BeitragVerfasst am: 28.09.2010 20:41    Titel: Antworten mit Zitat

Google findet für die Kombination aus
Cannot use a scalar value as an array
und
PEAR
über 10.000 Seiten...

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
leh00
ConPresso-Newbie


Anmeldungsdatum: 29.05.2008
Beiträge: 13

BeitragVerfasst am: 28.09.2010 20:41    Titel: Antworten mit Zitat

Hallo Markus,

Nein - die beiden haben mit Conpresso nichts zu tun... Die Suche war nur einen Level zu hoch angesetzt.

Gruss
Leh00
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr. Magpie
ConPresso-Experte


Anmeldungsdatum: 01.01.1970
Beiträge: 994
Wohnort: Wuppertal

BeitragVerfasst am: 07.02.2011 05:32    Titel: Variablen-Kollision mod_menu vs. Enhanced Parser Antworten mit Zitat

MarkusR hat Folgendes geschrieben:
Ich hatte jetzt erst mal den Verdacht des "Rubriken-Recyclings" d.h. mehrfachen Einbindens der gleichen Rubriken, was IMMER zu Fehlern führt.

Du kannst mal ziemlich an den Anfang von
_mod_menu/includes/inc_build_nav.inc.php
folgende Zeile setzen:
Code:
$level = array();

Ich habe, glaub' ich, den wahren, mindestens aber einen Verursacher des Problems gefunden: http://community.conpresso.de/viewtopic.php?p=26635#26635

Eine Lösung kann die von Markus empfohlene Zeile sein, eine andere die Umbenennung von $level im Enhanced Parser.

Offenbar ist $level global definiert.

_________________
Günther Ludwig, amazingBytes webdesign      

Referenzen finden Sie hier: amazingBytes webdesign - Referenzen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neue Antwort erstellen    ConPresso Community Foren-Übersicht -> Modul Menu (ConPresso 4) Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen