+ Antworten
Ergebnis 1 bis 2 von 2

Thema: Cannot redeclare getsection()

  1. #1
    Neu an Board Avatar von Walixx
    Registriert seit
    06.04.2009
    Beiträge
    33
    Bedankte sich
    1
    Erhielt 2 Danksagungen
    in 2 Beiträgen

    Standard Cannot redeclare getsection()

    Hallo Leute. Ich bin dabei mich in die Entwicklung eins Content Plugins für Joomla 1.5 zu stürzen. Mit PHP bin ich ganz gut vertraut aber noch in der Lernphase.

    Zum Problem: Ich möchte in dem Plugin die SectionID in die Variable $section laden.

    PHP-Code:
    function onPrepareContent( &$article, &$params$start) {
          global 
    $mainframe;

     ...

          
    //Section ID auslesen
    function getSection($iId) {
    $database = &JFactory::getDBO();

    $sql "SELECT s.id ";
    $sql .= "FROM #__sections as s join #__content as c on c.sectionid = s.id ";
    $sql .= "WHERE c.id = $iId ";
    $database->setQuery$sql );
    $row=$database->loadResult();
    return 
    $row;
    }
    $section=getSection(JRequest::getInt'id'));
        
    ...

         } 
    Insgesamt soll das Plugin einen Button unterhalb eines Beitrags anzeigen.

    Das Script funktioniert auch in der Beitragsansicht wunderbar. Die SectionID wird ausgelesen, in die Variable geladen und dann auch in die anderen Funktionen geladen, sodass alles so funktioniert wie gewollt. Allerdings bekomme ich, wenn ich die Blogansicht von Joomla aufrufe, folgende Fehlermeldung:
    Fatal error: Cannot redeclare getsection() (previously declared in /.../datei.php:44) in /.../datei.php on line 44
    Wie bekomme ich das hin, dass die SectionID ausgelesen wird und die ganze Funktion durchläuft, ohne dsese Fehlermeldung zu produzieren?
    Bitte um eure Hilfe.

    Gruß Walixx
    Es gibt tatsächlich Mac-Aussteiger. Aber die Rückfallquote steigt mit jeder neuen Windows-Version.

    Schat mal unter WebSzenario.de vorbei. Es lohnt sich.

  2. #2
    War schon öfter hier Avatar von Tribal6
    Registriert seit
    23.11.2004
    Ort
    Schweiz
    Beiträge
    243
    Bedankte sich
    3
    Erhielt 54 Danksagungen
    in 44 Beiträgen

    Standard

    Hi Wallixx

    Die Fehlermeldung besagt ganz einfach, das die Funktion mit Namen 'getSection' nicht zweimal deklariert werden kann. Das heisst mit anderen Worten, das es irgendwo im Code noch eine Funktion gibt, die so heisst. Und weil diese Fehlermeldung in der Content-Blogansicht geworfen wird: Yepp, in ../components/com_content/section/models/section.php, Zeile 148 ist sie auch. Das heisst es handelt sich hier um einen simplen Namenskonflikt, weil zwei Funktionen denselben Namen haben. Benenne deine Funktion einfach um, dann hast du Ruhe

    Cheers
    Roger

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein