Seite 2 von 2

Verfasst: Mo 10. Nov 2003, 19:17
von timo
Probier einfach mal die WAMP. Die Fehler kommen definitiv aus einem Modul (erkennbar an der Zeile /home/www/user666/html/contenido/contenido/includes/include.con_editcontent.php(571))

Grüße,
Timo

Verfasst: Mo 10. Nov 2003, 19:41
von emergence
wenn du glaubst es hilft dir mit ner neuen installation...

aber wenn du das problem wieder hast (bei der hauptnavigation) was machst dann nochmal neu installieren ? ist doch keine lösung...

gib uns mal den quellcode für dieses modul (input und output)

..

Verfasst: Mo 10. Nov 2003, 19:53
von FireCologne
danke für eure hilfe...

Input:

Code: Alles auswählen

?>
<table cellspacing="0" cellpadding="0" cellpadding="4">

    <tr>
        <td class="text">Baum wählen:</td>
        <td>
            <select name="CMS_VAR[0]">
            <option value="0">-- kein --</option>
            <?php

                $sql = "SELECT
                            A.idcat,
                            C.name
                        FROM
                            ".$cfg["tab"]["cat_tree"]." AS A,
                            ".$cfg["tab"]["cat"]." AS B,
                            ".$cfg["tab"]["cat_lang"]." AS C
                        WHERE
                            A.idcat     = B.idcat AND
                            B.idcat     = C.idcat AND
                            C.idlang    = '".$lang."' AND
                            B.idclient  = '".$client."' AND
                            C.visible   = 1 AND
                            A.level     = '0'
                        ORDER BY
                            A.idtree";

                $db->query($sql);

                while ( $db->next_record() ) {

                    if ( "CMS_VALUE[0]" == $db->f("idcat") ) {
                        echo '<option selected="selected" value="'.$db->f("idcat").'">'.$db->f("name").'</option>';

                    } else {
                        echo '<option value="'.$db->f("idcat").'">'.$db->f("name").'</option>';

                    }
                }

            ?>
            </select>
        </td>
    </tr>

</table>

<?php
Output:

Code: Alles auswählen

<?php

if ( !is_object($db2) ) {
    $db2 = new DB_Contenido;
}

/**
 * Check if a category is child
 * of another category
 *
 * @return boolean true/false
 * @author Jan Lengowski <Jan.Lengowski@4fb.de>
 * @copyright four for business AG 2003
 */
function catIsChildOf($id, $idparent) {

    global $cfg, $client, $lang;

    $db = new DB_Contenido;

    $parent = $id;

    while ( $parent != 0 ) {

        $sql = "SELECT
                    a.parentid
                FROM
                    ".$cfg["tab"]["cat"]." AS a,
                    ".$cfg["tab"]["cat_lang"]." AS b
                WHERE
                    a.idclient  = '".$client."' AND
                    b.idlang    = '".$lang."' AND
                    a.idcat     = b.idcat AND
                    a.idcat   = '".$parent."'";

        $db->query($sql);
        $db->next_record();

        $parent = $db->f("parentid");

        if ($parent == $idparent) {
            return true;
        }

    }

    return false;

}

if ( catIsChildOf($idcat, CMS_VALUE[0]) ) {
    $sel_idcat = $idcat;
} else {
    $sel_idcat = CMS_VALUE[0];
}

/* Include Template Class */
include_once($cfg["path"]["contenido"] . 'classes/class.template.php');

/**
 * Array storing alle the
 * navigation data
 */
$navitems = array();


/* Template Instance */
$tpl = new Template;

/**
 * Recursive function for creating
 * the navigation array
 * @param Int $idcat Category id
 */
function nav($idcat) {

        global $navitems, $client, $lang, $cfg;

        $db  = new DB_Contenido;
        $db2 = new DB_Contenido;

        $sql = "SELECT parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat = '$idcat'";

        $db->query($sql);
        $db->next_record();

        $parentid = $db->f("parentid");

        if ( $parentid == 0 ) {

           if ( $idcat != CMS_VALUE[0] ){

                $navitems = array();
              
                $sql = "SELECT
                            A.idcat,
                            C.name
                        FROM
                            ".$cfg["tab"]["cat_tree"]." AS A,
                            ".$cfg["tab"]["cat"]." AS B,
                            ".$cfg["tab"]["cat_lang"]." AS C
                        WHERE
                            A.idcat     = B.idcat   AND
                            B.idcat     = C.idcat   AND
                            B.idclient  = '$client' AND
                            C.idlang    = '$lang'   AND
                            C.visible   = '1'       AND
                            B.parentid  = 'CMS_VALUE[0]'
                        ORDER
                            BY A.idtree";

                      $db->query($sql);

                      while ($db->next_record()) {

                            /* Check for external redirects... */
                            $sql = "SELECT
                                        a.external_redirect AS ext
                                    FROM
                                        ".$cfg["tab"]["art_lang"]." AS a,
                                        ".$cfg["tab"]["cat_art"]." AS b,
                                        ".$cfg["tab"]["cat"]." AS c
                                    WHERE
                                        b.idcat     = '".$db->f("idcat")."' AND
                                        b.is_start  = '1' AND
                                        c.idclient  = '".$client."' AND
                                        c.idcat     = b.idcat AND
                                        a.idart     = b.idart AND
                                        a.idlang    = '".$lang."'";

                            $db2->query($sql);
                            $db2->next_record();

                            $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

                            $navitems[$db->f("idcat")] = array("idcat"      => $db->f("idcat"),
                                                                "name"      => $db->f("name"),
                                                                "target"    => $target);
                      }

           }
           
           return true;
        }

        $sql = "SELECT
                    A.idcat,
                    C.name
                FROM
                    ".$cfg["tab"]["cat_tree"]." AS A,
                    ".$cfg["tab"]["cat"]." AS B,
                    ".$cfg["tab"]["cat_lang"]." AS C
                WHERE
                    A.idcat     = B.idcat   AND
                    B.idcat     = C.idcat   AND
                    B.idclient  = '$client' AND
                    C.idlang    = '$lang'   AND
                    C.visible   = '1'       AND
                    B.parentid  = '$parentid'
                ORDER BY
                    A.idtree";

        $db->query($sql);

        while ($db->next_record()) {

                /* Check for external redirects... */
                $sql = "SELECT
                            a.external_redirect AS ext
                        FROM
                            ".$cfg["tab"]["art_lang"]." AS a,
                            ".$cfg["tab"]["cat_art"]." AS b,
                            ".$cfg["tab"]["cat"]." AS c
                        WHERE
                            b.idcat     = '".$db->f("idcat")."' AND
                            b.is_start  = '1' AND
                            c.idclient  = '".$client."' AND
                            c.idcat     = b.idcat AND
                            a.idart     = b.idart AND
                            a.idlang    = '".$lang."'";

                $db2->query($sql);
                $db2->next_record();

                $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';
                
                $tmp_nav[$db->f("idcat")] = array("idcat"   => $db->f("idcat"),
                                                  "name"    => $db->f("name"),
                                                  "target"  => $target);
        }

        $tmp_nav[$idcat]["sub"] = $navitems;
        $navitems = $tmp_nav;

        /* Function call */
        nav($parentid);

}  // end function

$sql = "SELECT
            A.idcat,
            C.name
        FROM
            ".$cfg["tab"]["cat_tree"]." AS A,
            ".$cfg["tab"]["cat"]." AS B,
            ".$cfg["tab"]["cat_lang"]." AS C
        WHERE
            A.idcat     = B.idcat   AND
            B.idcat     = C.idcat   AND
            B.idclient  = '$client' AND
            C.idlang    = '$lang'   AND
            C.visible   = '1'       AND
            B.parentid  = '$sel_idcat'
        ORDER BY
            A.idtree";

$db->query($sql);

while ( $db->next_record() ) {

        /* Check for external redirects... */
        $sql = "SELECT
                    a.external_redirect AS ext
                FROM
                    ".$cfg["tab"]["art_lang"]." AS a,
                    ".$cfg["tab"]["cat_art"]." AS b,
                    ".$cfg["tab"]["cat"]." AS c
                WHERE
                    b.idcat     = '".$db->f("idcat")."' AND
                    b.is_start  = '1' AND
                    c.idclient  = '".$client."' AND
                    c.idcat     = b.idcat AND
                    a.idart     = b.idart AND
                    a.idlang    = '".$lang."'";

        $db2->query($sql);
        $db2->next_record();

        $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';

        $navitems[$db->f("idcat")] = array("idcat"  => $db->f("idcat"),
                                           "name"   => $db->f("name"),
                                           "target" => $target);
}

/* Create Navigation Array */
nav($sel_idcat);

/* Start Output buffer */
ob_start();

echo '<table cellspacing="0" cellpadding="0" border="0">';

foreach ($navitems as $key => $data) {

    /* 1. Navigations Ebene */
    $tpl->reset();
    $tpl->set('d', 'NAME',  $data['name']);
    $tpl->set('d', 'TARGET', $data['target']);
    $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
    $tpl->next();

    if ($idcat == $data['idcat'] || is_array($data['sub'])) {
        $tpl->generate('templates/navfirst_on.html');
    } else {
        $tpl->generate('templates/navfirst_off.html');
    }

    if (is_array($data['sub'])) {

        foreach ($data['sub'] as $key => $data) {

            /* 2. Navigations Ebene */
            $tpl->reset();
            $tpl->set('d', 'NAME',  $data['name']);
            $tpl->set('d', 'TARGET', $data['target']);
            $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
            $tpl->next();

            if ($idcat == $data['idcat'] || is_array($data['sub'])) {
                $tpl->generate('templates/navsecond_on.html');
            } else {
                $tpl->generate('templates/navsecond_off.html');
            }

            if (is_array($data['sub'])) {

                foreach ($data['sub'] as $key => $data) {

                    /* 3. Navigations Ebene */
                    $tpl->reset();
                    $tpl->set('d', 'NAME',  $data['name']);
                    $tpl->set('d', 'TARGET', $data['target']);
                    $tpl->set('d', 'HREF',  $sess->url('front_content.php?idcat='.$data['idcat']));
                    $tpl->next();

                    if ($idcat == $data['idcat']) {
                        $tpl->generate('templates/navthird_on.html');
                    } else {
                        $tpl->generate('templates/navthird_off.html');
                    }

                } // end foreach

            } // end if

        } // end foreach

    } // end if

} // end foreach

echo '</table>';

/* Read out buffer */
$html = ob_get_contents();

/* Clean buffer */
ob_end_clean();

/* Output buffer-contents */
echo $html;

?>
Ich hoffe es hilft !!

DANKE!!

MfG

FireCologne

Verfasst: Mo 10. Nov 2003, 20:16
von emergence
mit ner eins zu eins kopie krieg ich den selben fehler bei dem modul
obwohl ich die änderungen aus dem snapshot übernommen habe.

[10-Nov-2003 20:07:27] PHP Parse error: parse error in e:\contenido_4.4.1\contenido\includes\include.con_editcontent.php(571) : eval()'d code on line 665

und zwar erst dann wenn ich auf artikel - editor gehe (weisse seite)
vorher erscheint bei mir keine warnmeldung... (vorkonfiguration geht)

hmm... sehe ich mir morgen an..

sag mal welche anderen module sind noch auf der seite dazugeschalten ?

...

Verfasst: Mo 10. Nov 2003, 20:23
von FireCologne
artikelliste, hauptnavi, bild 3, bild 4, service navigation, subheadline, headline, text....alles standard module !!

DANKE!!

MfG
FireCologne

Verfasst: Di 11. Nov 2003, 09:27
von emergence
okay ich hab das jetzt ein wenig getestet... und mir ist folgendes aufgefallen... (dein modul ist unverändert geblieben)

ich hab dazu das standard layout verwendet:

also dein modul in style -> template -> standard (angewählt) -> dein modul dem container 5 zugewiesen, gespeichert.

dann wechsel auf content -> artikel -> kategorie -> Hauptnavigation(angewählt) -> auf Startartikel geklickt -> (wechsel in den editor) weisse seite!

unter administration - system - errorlog erscheint die fehlermeldung !

dann wieder wechsel auf content -> artikel -> Hauptnavigation(angewählt) -> Kategorie konfigurieren angeklickt und dort das Modul von kein auf Hauptnavigation gestellt und gespeichert -> wieder wechsel auf den Startartikel -> Navigation erscheint (keine Fehlermeldung)

hmm...

versuch das mal...

Gleiches Problem

Verfasst: Do 20. Nov 2003, 17:32
von schmitt197
Ich habe das gleiche Problem, wie oben beschrieben, nur das in meinem errorlog die nachfolgende Meldung steht.
Aber komischerweise kann ich Bilder und alles schön hochladen die sind auch im richtigen Ordner (ich habe den cms-Ordner kopiert und auf meine Subdomain gelegt). genauso neu angelegte CSS oder Skripte. Irgendwas ist aber trotzdem kaputt, weil ich nämlich unter der URL nur ne weiße Seite krieg und Editor/Vorschau genauso.

[20-Nov-2003 15:23:36] PHP Fatal error: Call to undefined function: i18nstripacceptlanguages() in /var/www/meinedomain.de/subdomain/htdocs/contenido/main.loginform.php on line 109
[20-Nov-2003 15:39:11] PHP Fatal error: Call to undefined function: i18nstripacceptlanguages() in /var/www/meinedomain.de/subdomain/htdocs/contenido/main.loginform.php on line 109
[20-Nov-2003 17:10:48] PHP Fatal error: Cannot redeclare catischildof() (previously declared in /var/www/meinedomain.de/subdomain/htdocs/cms/front_content.php(553) : eval()'d code:150) in /var/www/meinedomain.de/subdomain/htdocs/cms/front_content.php(553) : eval()'d code on line 486

Verfasst: Do 20. Nov 2003, 18:28
von emergence
@schmitt197

innerhalb eines moduls findet bei dir irgendwo eine funktions definition statt
das ist okay, aber zweimal !! darf dies nicht definiert werden...
vermutlich verwendest du ein modul doppelt und in beiden wird ein und die selbe funktion definiert...

die simpleste methode für dein problem ist in einem deiner module die sich wieder holen (entweder die zweifach vorhanden funktionen zu entfernen - das modul hast vermutlich ja schon kopiert) oder in dem zweiten modul sämtlich funktionen umzubenennen und deren aufrufe innerhalb des moduls die sich darauf beziehen...

Verfasst: Fr 21. Nov 2003, 10:59
von schmitt197
@emergence:
Danke für deine schnelle Antwort, aber es funktioniert leider immer noch nicht. Ich erkläre dir mal etwas ausführlicher, wie die Struktur ist.
Bild
ich habe von subdomain1 das cms-verzeichnis nach subdomain2 kopiert. Dort habe ich in der config.php den Pfad zum Contenido und die mandanten+sprache geändert:

Code: Alles auswählen

<?php

//path to contenido, for all inclusions
$contenido_path = "../contenido/";
$errorfont = "font3";
//fo the language file
$language="de";
//optional    if it isnt set the first language of the client is choose
$load_lang = "3";
$load_client = "3";

/* Various debugging options */
$frontend_debug["container_display"] = false;
$frontend_debug["module_display"] = false;
$frontend_debug["module_timing"] = false;

/* Set to 1 to brute-force module regeneration */
$force = 0;

?>
Der mandant kunde2 hat folgende Einträge:
Serverpfad: /var/www/domain.de/subdomain2/htdocs/cms/
webadresse: http://subdomain2.domain.de/cms/

ich bekomme aber bei der Artikel Vorschau/Editieren und unter http://subdomain2.domain.de nur ne weiße Seite. Ich habe auch mal das Modul (hauptnavigation), das deiner Meinung nach Schuld daran ist, gelöscht, aber es passiert nix. Rechte sind alle richtig vergeben. Ich habe keine Ahnung, was falsch ist.

Verfasst: Fr 21. Nov 2003, 13:26
von schmitt197
Danke. Bitte nicht mehr den Kopf deswegen zerbrechen :D.
Hat sich erledigt.