Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

Was bedeutet dieser Fehler: "Cannot redeclare class......" (Modul: Open Flash Chart)

Eingetragen von fryswe (63)
am 19.04.2009 - 19:04 Uhr in
  • Module
  • Drupal 5.x

ich versuche gerade ein open flash chart in eine drupal node zu bekommen (drupal 5). aber irgendwas läuft da schief. außerhalb von drupal funktioniert das teil wunderbar. nur integriert in die entsprechende node-xxx.tpl.php kommt folgender fehler... irgendwelche ideen was der zu bedeuten hat?

Fatal error: Cannot redeclare class line_hollow in \xxx\sites\all\modules\open_flash_chart_api\ofc-library\open-flash-chart.php on line 1376

‹ Nivo-Slider und Bildverlinkungen {gelöst} Link auf User-Profilseiten einbinden ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Durch das Einbinden, wird

Eingetragen von Tobias Bähr (4019)
am 19.04.2009 - 19:55 Uhr

Durch das Einbinden, wird diese classe >1 (mehr als einmal) eingebunden. Dh. entweder kannst du schon ohne einbinden der Datei die Funktionalität verwenden oder du musst ein include_once ('/pfad/zur/datei'); machen.

----------------------------------------

http://tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen

Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Das Verhältnis anderen zu helfen muss höher sein, als von anderen Hilfe zu erfragen/erwarten.

  • Anmelden oder Registrieren um Kommentare zu schreiben

In der node.tpl.php wird

Eingetragen von md (3717)
am 19.04.2009 - 20:10 Uhr

In der node.tpl.php wird natürlich jede Funktion die deklariert wird, mehrfach deklariert, da die nodes von Drupal ja in einer Schleife aufgerufen werden. Also: keine Funktionen in node Templates deklarieren, sondern diese nur aufrufen. Ein guter Platz für Funktionen ist übrigens ein eigenes Modul für Funktionen. Die braucht man noch nicht mal inkludieren. Das macht Drupal.

Jede Funktion von Drupal oder von Modulen lässt sich problemlos überall aufrufen. In Templates ebenso wie in eigenen Modulen, selbst wenn die mit '_' als "private" gekennzeichnet sind. Ist ja nicht wie in OOP-Sprachen wirklich "private".

Nebenbei: ich denke Google kennt 'fryswe' schon.

vg
--
md - DrupalCenter.de

mdwp* :: Drupal Consulting

vg
md - DrupalCenter.de

mdwp* Drupal Consulting & Services

  • Anmelden oder Registrieren um Kommentare zu schreiben

OT: "private" ist kein

Eingetragen von Alexander Langer (3416)
am 19.04.2009 - 21:04 Uhr

OT:
"private" ist kein Indikator aller OO-Sprachen. OO-Urvater Smalltalk kommt ebenso ohne aus wie dessen geistiges Kind Objective C. Keiner würde aber erstnhaft aud die Idee kommen diesen beiden Sprachen den OO-Status abzuerkennen, zumal sie womöglich gar mehr OO sind als die üblichen Verdächtigen.

--
mortendk: everytime you use contemplate... Thor is striking down from above with his mighty hammer - crushing and killing a kitten!

webseiter.de

Suchmaschinenoptimierung (SEO) & Drupal

  • Anmelden oder Registrieren um Kommentare zu schreiben

danke für die zahlreichen

Eingetragen von fryswe (63)
am 19.04.2009 - 22:37 Uhr

danke für die zahlreichen antworten. google kenne ich selbstverständlich, konnte da aber keine konkrete lösung für mein problem finden.

es geht mir hier ja um das modul "open flash chart" => http://drupal.org/project/open_flash_chart_api

um den chart in meine node-xxx.tpl.php einzubinden verwende ich folgenden code:

<?php
include_once( '/sites/all/modules/open_flash_chart_api/ofc-library/open-flash-chart.php' );

$g = new graph();
$g->bg = '#E4F0DB';

$g->pie(60,'#FFFFFF','{display:none;}',false,1);

$g->pie_values(
  array(
40,40,10,10),
  array(
'A','B','C','D') );

$g->pie_slice_colours( array('#abbd15','#e5eac0','#4a7e00','#799908') );
$g->set_tool_tip( '#val#% #x_label#' );
$g->bg_colour = '#FFFFFF';

$g->set_width( 150 );
$g->set_height( 150 );

$g->set_output_type('js');
echo
$g->render();
?>

dabei tritt oben genannter fehler auf.

leider is die modul-dokumentation nicht wirklich hilfreich, ob ich den chart wirklich korrekt einbinde => http://drupal.org/node/193294

außerhalb von drupal funktioniert es auf jeden fall wunderbar...

habe es auch schon wie hier beschrieben probiert: http://drupal.org/node/180157

das sieht dann bei mir wie folgt aus:

<?php
require_once './includes/open-flash-chart.php';
require_once
'./includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

$g = new graph();
$g->bg = '#E4F0DB';

$g->pie(60,'#FFFFFF','{display:none;}',false,1);

$g->pie_values(
  array(
40,40,10,10),
  array(
'A','B','C','D') );

$g->pie_slice_colours( array('#abbd15','#e5eac0','#4a7e00','#799908') );
$g->set_tool_tip( '#val#% #x_label#' );
$g->bg_colour = '#FFFFFF';

$g->set_width( 150 );
$g->set_height( 150 );

$g->set_output_type('js');
echo
$g->render();
?>

da kommt aber der gleiche fehler, sprich:

Fatal error: Cannot redeclare class line_hollow in xxx\includes\open-flash-chart.php on line 1376

wenn ich das include bzw. im zweiten beispiel require weglasse, bekomme ich übrigens folgenden fehler:

Fatal error: Class 'graph' not found in xxx\themes\xxx\node-xxx.tpl.php on line 100

falls jemand weiß, wie ich bei diesem modul den chart so einbinden kann, dass er funktioniert, dann wäre ich für jede hilfe dankbar! ich verzweifel hier leider schon langsam :(

  • Anmelden oder Registrieren um Kommentare zu schreiben

hm, ich glaube ich habe

Eingetragen von fryswe (63)
am 19.04.2009 - 22:51 Uhr

hm, ich glaube ich habe verstanden und den code jetzt in anlehnung an das beispiel in der dokumentation wie folgt runtergekürzt:

<?php
$g
= new open_flash_chart_api();
$g->pie(60,'#FFFFFF','{display:none;}',false,1);
$g->pie_values(array(40,40,10,10),array('A','B','C','D') );
$g->pie_slice_colours( array('#abbd15','#e5eac0','#4a7e00','#799908') );
$g->set_tool_tip( '#val#% #x_label#' );
$g->bg_colour = '#FFFFFF';
$g->bg = '#E4F0DB';
$g->set_width( 150 );
$g->set_height( 150 );
$g->set_output_type('js');
echo
$g->render();
?>

Allerdings bleibt die Ausgabe leer/blank.

Mit Hilfe von Firebug kann ich im Quelltext aber folgenden Code identifizieren:

<div id="ibc5115641db056f664a3e97bde511e59"/>
<script type="text/javascript">
1
2var so = new SWFObject("/xxx/sites/all/modules/open_flash_chart_api/open-flash-chart.swf", "ofc", "150", "150", "9", "#FFFFFF");
3so.addVariable("variables","true");
4so.addVariable("x_axis_steps","1");
5so.addVariable("y_ticks","5,10,5");
6so.addVariable("line","3,#87421F");
7so.addVariable("y_min","0");
8so.addVariable("y_max","20");
9so.addVariable("bg_colour","#FFFFFF");
10so.addVariable("pie","60,#FFFFFF,{display:none;},1,,1");
11so.addVariable("values","40,40,10,10");
12so.addVariable("pie_labels","A,B,C,D");
13so.addVariable("colours","#abbd15,#e5eac0,#4a7e00,#799908");
14so.addVariable("links","");
15so.addVariable("tool_tip","%23val%23%25+%23x_label%23");
16so.write("ibc5115641db056f664a3e97bde511e59");
17
</script>

er wandelt die sache also korrekt um, der flash-chart wird allerdings (noch) nicht ausgegeben...die seite bleibt wie gesagt leer :-/

  • Anmelden oder Registrieren um Kommentare zu schreiben

hm ok, nun gehts! tausend

Eingetragen von fryswe (63)
am 19.04.2009 - 23:23 Uhr

hm ok, nun gehts!

tausend dank noch mal für die anregungen :)

  • Anmelden oder Registrieren um Kommentare zu schreiben

und an was lag es nun

Eingetragen von Hacky (255)
am 28.10.2010 - 12:06 Uhr

und an was lag es nun ?!?!?!?!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Seite auf Xamp wird nicht geladen
  • [simplenews_stats] [D10] Keine Öffnungen/Ansichten der Newsletter werden gezählt
  • Theme Olivero - Rand entfernen?
  • Olivero veraendern
  • Upgrade Drupal 9 auf 10
  • Matomo(?) in Seite, aber Deinstalliert!
  • Upgrade Drupal 7 auf Drupal 9 / Inhalt erstellen zeigt nur Fehler an
  • Fehlermeldung nach Update auf Drupal 10
  • Wie Button erstellen?
  • footnotes bei D10 und CKE5
  • ckeditor Bilder skalieren
  • Bild in welcher Form die Beschriftung!
Weiter

Neue Kommentare

  • Wie plötzlich passierte
    vor 1 Stunde 26 Minuten
  • Sowas geht immer mit
    vor 2 Tagen 25 Minuten
  • vielen Dank fuer Deine Tipps.
    vor 2 Tagen 6 Stunden
  • Routinefrage: Kann es ein
    vor 3 Tagen 1 Stunde
  • @onkel Bob,Erst mal
    vor 1 Woche 2 Tagen
  • Prinzipiell geht das schon.
    vor 1 Woche 3 Tagen
  • Rubi_2021 schriebWie genau
    vor 2 Wochen 1 Tag
  • Ok, war ein Versuch. ;-) Kann
    vor 2 Wochen 1 Tag
  • Danke
    vor 2 Wochen 1 Tag
  • Redest Du von dem
    vor 2 Wochen 1 Tag

Statistik

Beiträge im Forum: 248803
Registrierte User: 19832

Neue User:

  • elkb
  • J. Berten
  • vohome

» Alle User anzeigen

User nach Punkten sortiert:
wla9333
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 1 Gast online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association