pragmaMx Support Forum

pragmaMx => Zusatzmodule => Thema gestartet von: easy2k_de am 06 Oktober 2003, 23:24:45

Titel: PhpMyFAQ
Beitrag von: easy2k_de am 06 Oktober 2003, 23:24:45
Keine Ahnung ob das hier richtig ist?
Aber da ich auch nicht so der PHP-Guro bin versuche ich mal mein Glück.
Da ich von der nuke-faq total abgetan bin habe ich mich mal umgesehen und bin auf phpmyfaq gestoßen.
Das Teil finde ich einfach genial. (nur mal so am rande) ;)
Nun zu meinem Problem:
Ich hab es nun geschaft die faq in die Seite zu intigrieren.
faq.php im web-root
 
<?php

/************************************************************************/
/* PHP-NUKE: Web Portal System                                          */
/* ===========================                                          */
/*                                                                      */
/* Copyright (c) 2001 by Francisco Burzi (fburzi@ncc.org.ve)            */
/* http://phpnuke.org                                                   */
/*                                                                      */
/* This program is free software. You can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as published by */
/* the Free Software Foundation; either version 2 of the License.       */
/************************************************************************/

if (eregi("block-faq.php",$_SERVER['PHP_SELF'])) 

if (!isset(
$mainfile)) { include("mainfile.php"); }

$index 1
include(
"header.php");

include("faq/index.php");

include(
"footer.php");
?>


Nun wenn alles so schön geht warum dann nicht gleich als center-block.
Also die faq.php als block-faq.php nach blocks koppiert.
Und siehe da es geht nicht. :cry
Fehlermeldung:
Fatal error: Cannot redeclare opentable() (previously declared in E:\www-root\themes\vkp-bluestyle\theme.php:34) in E:\www-root\themes\vkp-bluestyle\theme.php on line 33

Tja wo liegt da der Hund begraben?
Vieleicht kann mir jemand helfen?
Wäre echt Spitze.
Titel: Re: PhpMyFAQ
Beitrag von: BowlingX am 06 Oktober 2003, 23:34:12
Du hast die Funktion "OpenTable()" irgendwo deklariert..diese ist aber schon in der theme.php vorhanden!
Titel: Re: PhpMyFAQ
Beitrag von: easy2k_de am 06 Oktober 2003, 23:50:21
Ich wüßte nur nicht wo?
Da ich ja nur die faq.php erstellt habe und die sieht genauso aus wie oben.
Aber trotzdem danke für die schnelle Antwort.
Titel: Re: PhpMyFAQ
Beitrag von: easy2k_de am 07 Oktober 2003, 08:59:57
Das opentable() Problem habe ich nun behoben.
Dafür ist aber eine neue Fehlermeldung erschienen.
 
Parse error: parse error, unexpected T_INCLUDE in E:\www-root\blocks\block-faq.php on line 12

Das ist dort wo "include("faq/index.php");" steht

Hier mal der code:
 
if (eregi("block-faq.php",$_SERVER[PHP_SELF])) {
    Header("Location: ../index.php");
    die();
}
if (!isset($mainfile)) { include("mainfile.php"); }

$index = 1;
include("header.php");
opentable()
include("faq/index.php");
closetable()
include("footer.php");
Titel: Re: PhpMyFAQ
Beitrag von: Andi am 07 Oktober 2003, 09:44:47
Hi easy2k_de :)

denke, da ist etwas php-Grundwissen gefragt ;)
Näheres zu dem Parseerror findest Du hier:
  http://www.php.net/.....instruction-separation.php (http://www.php.net/manual/de/language.basic-syntax.instruction-separation.php)

Aber das ganze ist vom Prinzip schon nicht richtig. In einem Block kannst Du nichts direkt ausgeben. Sämtlicher anzuzeigender Inhalt muss in die Variable $content gestellt werden. Auch kannst Du in einem Block nicht die header.php und footer.php includen, denn wenn das Block-script ausgeführt wird,  ist zumindest die header.php bereits geladen.

Um das Ganze richtig zu machen, müsste das faq-Teil komplett als Modul umgeschrieben werden. Eine Alternative ist, die faq in einem iframe anzuzeigen.