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 - 18: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 - 18: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

  • Anmelden oder Registrieren um Kommentare zu schreiben

In der node.tpl.php wird

Eingetragen von md (3717)
am 19.04.2009 - 19: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

  • Anmelden oder Registrieren um Kommentare zu schreiben

OT: "private" ist kein

Eingetragen von Alexander Langer (3416)
am 19.04.2009 - 20: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

  • Anmelden oder Registrieren um Kommentare zu schreiben

danke für die zahlreichen

Eingetragen von fryswe (63)
am 19.04.2009 - 21: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 - 21: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 - 22: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 - 11:06 Uhr

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

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 3 Tagen 18 Stunden
  • Hey danke
    vor 4 Tagen 12 Stunden
  • Update: jetzt gibt's ein
    vor 5 Tagen 6 Stunden
  • Hallo, im Prinzip habe ich
    vor 1 Woche 2 Tagen
  • Da scheint die Terminologie
    vor 1 Woche 2 Tagen
  • Kannst doch auch alles direkt
    vor 2 Wochen 1 Stunde
  • In der entsprechenden View
    vor 2 Wochen 1 Stunde
  • Dazu müsstest Du vermutlich
    vor 2 Wochen 1 Stunde
  • gelöst
    vor 4 Wochen 3 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20449

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 13 Gäste 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