[gelöst] mysteriöses IE Phänomen

Gesperrt
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

[gelöst] mysteriöses IE Phänomen

Beitrag von mvf »

hallo community

ich habe ein absoult unerklärbares problem mit dem alten freund IE, das mich schier in den wahnsinn treibt

habt ihr schon mal auf dem screen text gesehen, der nirgends im quelltext zu finden ist?

beispiel:

http://anu.funjumping.de/cms/front_cont ... 1&idart=11
oder
http://anu.funjumping.de/cms/front_cont ... 5&idart=15

schaut euch bitte mal die beiden seiten an, alles im lot mit der navi im
FF, Opera, MOZ, NS

und im IE ??? :shock:

und nun das phänomen:
suche ich im quelltext nach dem 'zusätlichen text' (mmerdienst bzw Vorstand) dann finde ich keine anomalien :x

ich kriege hier gleich die krise, jetzt ist es schon wider halb 6, die ganze nacht um die oheren gehauen mit diesem verdammten IE

errorlog, nada, empty
xhtml validiert
css, ein paar warnungen, aber nichts was zum fehler führen würde

das ganze läüft mit 1:1 den gleichen modul für die 3. naviebene auf dem selben server mit der gleichen version cont 4.6.4 mr 2901 ohne probleme siehe
http://gaz.funjumping.de/cms/front_cont ... &idart=195

der output der 3. navieben sieht wie folgt aus:

Code: Alles auswählen

<?php
/* 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;

$sql = "SELECT
            A.idcat,
            C.name,
          C.public,
             C.idcatlang,
             C.startidartlang
        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,
                    a.idartlang AS idartlang
                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
                    c.idclient  = '".$client."' AND
                    c.idcat     = b.idcat AND
                    a.idart     = b.idart AND
                    a.idlang    = '".$lang."'";

        $db2->query($sql);
        #$db2->next_record();
      $flag = false;
      while ($db2->next_record()&&!$flag) {
           if (isStartArticle($db2->f("idartlang"), $db->f("idcat"), $lang))
           {
            $flag = true;
               $target = ( $db2->f("ext") == 0 ) ? '_self' : '_blank';
      
               $navitems[$db->f("idcat")] = array("idcat"  => $db->f("idcat"),
                                                  "name"   => $db->f("name"),
                                                  "idart"      => $db->f("startidartlang"),
                                                  "public" => $db->f("public"),
                                            "idcatlang" => $db->f("idcatlang"),
                                                  "target" => $target);
           }
      }
}

/* Create Navigation Array */
if(($sel_idcat=='')||($sel_idcat=='0')){
    $cApiClient = new cApiClient($client);
    $sel_idcat = $cApiClient->getProperty('navigation', 'idcat_homepage');
}

nav($sel_idcat);

/* -mvfbof- fetch third level array -> $thirdLevel */
foreach ($navitems as $key => $data) {

   if (checkCatPermission($data['idcatlang'],$data['public'])) {

                  if (is_array($data['sub'])) {
                        $thirdLevel = $data['sub'];
                    }

    } // end if
} // end foreach

/* -mvfeof- fetch third level */


/* Start Output buffer */
ob_start();

foreach ($thirdLevel as $key => $data) { // -mvf $thirdLevel statt $navitems

   if (checkCatPermission($data['idcatlang'],$data['public'])) {

       /* 2. Navigation level */
       if (is_array($data['sub'])) {  // -mvf überbrückt die 2. ebene

					 /* 3. Navigation level */
                   if (is_array($data['sub'])) {
                       foreach ($data['sub'] as $key => $data) {
                      if (checkCatPermission($data['idcatlang'],$data['public'])) {
                              $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'].'&idart='.$data['idart']));
                              $tpl->next();
                             if ($idcat == $data['idcat']) {
                                 $tpl->generate('templates/navthird_on.html');
                        }elseif(is_array($data['sub'])){
                             $tpl->generate('templates/navthird_open.html');
                             } else {
                                 $tpl->generate('templates/navthird_off.html');
                             }

                             /* 4. Navigation level */
                           if (is_array($data['sub'])) {
                               foreach ($data['sub'] as $key => $data) {
                              if (checkCatPermission($data['idcatlang'],$data['public'])) {
                                      $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'].'&idart='.$data['idart']));
                                      $tpl->next();
                                      if ($idcat == $data['idcat']) {
                                          $tpl->generate('templates/navfourth_on.html');
                                 }elseif(is_array($data['sub'])){
                                      $tpl->generate('templates/navfourth_open.html');
                                      } else {
                                          $tpl->generate('templates/navfourth_off.html');
                                      }

                                      /* 5. Navigation level */
                                    if (is_array($data['sub'])) {
                                        foreach ($data['sub'] as $key => $data) {
                                       if (checkCatPermission($data['idcatlang'],$data['public'])) {
                                               $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'].'&idart='.$data['idart']));
                                               $tpl->next();
                                               if ($idcat == $data['idcat']) {
                                                   $tpl->generate('templates/navfifth_on.html');
                                               } else {
                                                   $tpl->generate('templates/navfifth_off.html');
                                               }
                                          } // end if
                                        } // end foreach
                                    } // end if
                                 } // end if
                               } // end foreach
                           } // end if
                        } // end if
                      } // end foreach
                  } // end if
               } // end if

    } // end if
} // end foreach

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

/* Clean buffer */
ob_end_clean();

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

?>


hiiiiiiiiiiiiiilfeeeeeeeeeeeeeeee was ist das bitte :cry: :cry: :cry:
Zuletzt geändert von mvf am Di 28. Mär 2006, 14:33, insgesamt 1-mal geändert.
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
xmurrix
Beiträge: 3215
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 17 Mal
Kontaktdaten:

Beitrag von xmurrix »

Morgen,

ja der IE macht wieder mal einen Strich durch die Rechnung, ist wohl beim Rendern übereifrig :D

Probier doch einfach die Ausgabe der Navigation als eine Liste auszugeben:

Code: Alles auswählen

<ul style="list-type:none;margin:0;padding:0;">
<li style="margin:0;padding:0;">
		<a href="front_content.php?idcat=23&idart=23" class="navi3rd_passive">Chronik</a>
</li><li style="margin:0;padding:0;">
<!-- Generated by Contenido 4.6.4-->
		<a href="front_content.php?idcat=27&idart=26" class="navi3rd_passive">Geschäftsstelle</a>
</li><li style="margin:0;padding:0;">
<!-- Generated by Contenido 4.6.4-->
		<a href="front_content.php?idcat=26&idart=27" class="navi3rd_passive">das Team</a>
</li><li style="margin:0;padding:0;">
<!-- Generated by Contenido 4.6.4-->
		<a href="front_content.php?idcat=22&idart=22" class="navi3rd_passive">der Vorstand</a>
</li></ul>
Dann zeigt es auch der IE korrekt an.

Gruß
xmurrix
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

problem gelöst !!!

nach einem kurzen austausch per pm hat mich xmurrix auf einen kleinen aber feinen punkt gebracht, ich hatte da noch ein float in den classen der zustände, diese kurz rausgenommen und schon läuft es. ein relikt aus der 2.ebene :oops:

eine frage hätte ich da noch, speziell an xmurrix, du schreibst
xmurrix hat geschrieben:ja der IE macht wieder mal einen Strich durch die Rechnung, ist wohl beim Rendern übereifrig :D
wie kann ich denn den IE 'debuggen', im firefox läuft des ja prima mit webdevtoolbar, aber im IE zu erroieren was woran liegt scheint ja unmöglich, speziell wenn man auf screen sachen sieht die nicht im quellcode stehen
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
xmurrix
Beiträge: 3215
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 17 Mal
Kontaktdaten:

Beitrag von xmurrix »

mvf hat geschrieben:wie kann ich denn den IE 'debuggen', im firefox läuft des ja prima mit webdevtoolbar, aber im IE zu erroieren was woran liegt scheint ja unmöglich, speziell wenn man auf screen sachen sieht die nicht im quellcode stehen
Hauptsache das Problem ist gelöst.
Mir ist für den IE ein Debugger alá Firefox-Webdevtoolbar nicht bekannt. Entweder man eignet sich das Wissen über die Bugs verschiedener Browser an, was meiner Meinung nach erheblichen Aufwand bedeutet, oder man gestaltet ein Layout in einem Browser, welches CSS korrekt interpretiert, um danach die browserspezifischen Bugs auszubügeln.
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

xmurrix hat geschrieben:oder man gestaltet ein Layout in einem Browser, welches CSS korrekt interpretiert, um danach die browserspezifischen Bugs auszubügeln.
thats what I do ;)

aber die 'browserspezifischen Bugs' im IE zu erroieren war mir speziell in diesem fall einfach nicht klar wo ansetzen.

anyway, es läuft und ich habe dich zu meinem personal hero of the day erkoren!
des is schon arg, wenn man weit über 10 stunden für so einen fitzel investiert.
who pays for that? billyboy?

also dir nochmal ganz herzlichen dank und auf in die nächste runde (gongong)
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese »

die internet explorer developer toolbar ist das microsoft pendant zur firefox webdeveloper toolbar. vor allem das dom fenster finde ich dort übersichtlicher als in der ff webdeveloper toolbar.
mvf
Beiträge: 1758
Registriert: Mo 1. Aug 2005, 00:35
Wohnort: in der schönen Hallertau, mitten im Hopfen
Kontaktdaten:

Beitrag von mvf »

stese hat geschrieben:die internet explorer developer toolbar ist das microsoft pendant zur firefox webdeveloper toolbar. vor allem das dom fenster finde ich dort übersichtlicher als in der ff webdeveloper toolbar.
hehe, der stese wieder ;)
cool installiert und is ja schon mal was, merci
Grüsse, Guido

"A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
Mostly Harmless - Douglas Adams
Gesperrt