Favicon wird nicht immer angezeigt Favicon wird nicht immer angezeigt
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Favicon wird nicht immer angezeigt

Started by Faith92, October 15, 2010, 06:51:38 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Faith92

Hey zusammen,

mir ist aufgefallen, dass mein Favicon nicht angezeigt wird, wenn man die Bilder in Originalgröße (also vergrößert) anschaut. Dieses Problem hab ich erst seit ich die neue Version hab und ich hab keine Ahnung, woran es liegt, weil ich nichts anders gemacht habe als früher.

Galerie: http://faithys-graphics.de/gallery/index.php?lang=german (favicon zu sehen)
Bild: http://faithys-graphics.de/gallery/displayimage.php?pid=2117&fullsize=1 (favicon nicht zu sehen)

LG

Αndré

Wenn du dein Favicon in favicon.ico umbenennst, sollte es für alle Dateien auf deinem Webserver gelten. Ansonsten könnte man es explizit für die Ansicht in voller Größe einbinden.

Faith92

So simpel, es funktioniert. Ich danke dir :)

Joachim Müller

Um's wirklich richtig zu machen (damit alle Browser, die dazu in der Lage sind das Favicon auch anzeigen) solltest Du wie unter http://documentation.coppermine-gallery.net/en/theme_examples.htm#theme_examples_content_fullsize beschrieben vorgehen und den HTML-Tag <link rel="shortcut icon" href="/favicon.ico" />einfügen. Das wäre die technisch saubere und valide Lösung.

Faith92

<link rel="shortcut icon" href="/favicon.ico" />
Diesen Code hatte ich schon immer eingefügt.

Jetzt versuch ich die Schritte von dem von dir geposteten Link zu folgen, da wie du selbst gesagt hast, nicht alle Browser das favicon richtig anzeigen.
Wie beschrieben wollte ich erst mal diese Zeile finden.

// Display the full size image
function theme_display_fullsize_pic()


Da sie nicht existiert, hab ich eben von der sample theme entsprechende Zeilen kopiert, aber ich weiß nicht, wo ich diese genau in meiner theme.php einfügen muss?

Müssten diese sein, wenn ich micht nicht irre

/******************************************************************************
** Section <<<theme_display_fullsize_pic>>> - START
******************************************************************************/
// Display the full size image
function theme_display_fullsize_pic()
{
    global $CONFIG, $THEME_DIR, $FORBIDDEN_SET, $LINEBREAK, $pid;
    global $lang_errors, $lang_fullsize_popup, $lang_charset;

    $superCage = Inspekt::makeSuperCage();

    if (!USER_ID && $CONFIG['allow_unlogged_access'] <= 2) {
        printf($lang_errors['login_needed'],'','','','');
        die();
    } elseif (USER_ID && USER_ACCESS_LEVEL <= 2) {
        printf($lang_errors['access_intermediate_only'],'','','','');
        die();
    }
    if ($superCage->get->keyExists('picfile')) {
        if (!GALLERY_ADMIN_MODE) {
            cpg_die(ERROR, $lang_errors['access_denied'], __FILE__, __LINE__);
        }
        //$picfile = $_GET['picfile'];
        //$picfile = $superCage->get->getPath('picfile'); // doesn't work with HTML entities
        $matches = $superCage->get->getMatched('picfile', '/^[0-9A-Za-z\/_.-]+$/');
        $picfile = $matches[0];
        $picname = $CONFIG['fullpath'] . $picfile;
        $imagesize = @getimagesize($picname);
        $imagedata = array('name' => $picfile, 'path' => path2url($picname), 'geometry' => $imagesize[3]);
    } elseif ($pid) {
        $sql = "SELECT filepath, filename, url_prefix, pwidth, pheight FROM {$CONFIG['TABLE_PICTURES']} AS p " . "WHERE pid='$pid' $FORBIDDEN_SET";
        $result = cpg_db_query($sql);
        if (!mysql_num_rows($result)) {
            cpg_die(ERROR, $lang_errors['non_exist_ap'], __FILE__, __LINE__);
        }
        $row = mysql_fetch_assoc($result);
        $pic_url = get_pic_url($row, 'fullsize');
        $geom = 'width="' . $row['pwidth'] . '" height="' . $row['pheight'] . '"';
        $imagedata = array('name' => $row['filename'], 'path' => $pic_url, 'geometry' => $geom);
    }
    if ((!USER_ID && $CONFIG['allow_unlogged_access'] <= 2) || (USER_ID && USER_ACCESS_LEVEL <= 2)) {
        // adjust the size of the window if we don't have to catter for a full-size pop-up, but only a text message
        $row['pwidth'] = 200;
        $row['pheight'] = 100;
    }

    $charset = ($CONFIG['charset'] == 'language file' ? $lang_charset : $CONFIG['charset']);
    $fullsize_html = <<<EOT
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=$charset" />
        <title>{$CONFIG['gallery_name']}: {$lang_fullsize_popup['click_to_close']}</title>
        <style type="text/css">
            body { margin: 0; padding: 0; background-color: gray; }
            img { margin:0; padding:0; border:0; }
            #content { margin:0 auto; padding:0; border:0; }
            table { border:0; width:{$row['pwidth']}px; height:{$row['pheight']}px; border-collapse:collapse}
            td { vertical-align: middle; text-align:center; }
        </style>

        <script type="text/javascript" src="js/jquery-1.3.2.js"></script>
        <script type="text/javascript" src="js/jquery.dimensions.pack.js"></script>
        <script type="text/javascript" src="js/displayimage.fullsize.js"></script>
    </head>
    <body style="margin:0px; padding:0px; background-color: gray;">

EOT;
    if ($CONFIG['transparent_overlay'] == 1) {
        $fullsize_html .= <<<EOT
        <table cellpadding="0" cellspacing="0" align="center" style="padding:0px;">
            <tr>

EOT;
        $fullsize_html .=  '<td align="center" valign="middle" background="' . htmlspecialchars($imagedata['path']) . '" ' . $imagedata['geometry'] . ' class="image">';
        $fullsize_html .=  '<div id="content">';
        $fullsize_html .=  '<a href="javascript: window.close()" style="border:none"><img src="images/image.gif?id='
                . floor(rand()*1000+rand())
                . '&amp;fullsize=yes" '
                . $imagedata['geometry']
                . ' alt="'
                . htmlspecialchars($imagedata['name'])
                . '" title="'
                . htmlspecialchars($imagedata['name'])
                . $LINEBREAK . $lang_fullsize_popup['click_to_close']
                . '" /></a><br />' . $LINEBREAK;
        $fullsize_html .=  <<<EOT
                    </div>
                </td>
            </tr>
        </table>

EOT;
    } else {
        $fullsize_html .=  '        <div id="content">'.$LINEBREAK;
        $fullsize_html .=  '<a href="javascript: window.close()"><img src="'
        . htmlspecialchars($imagedata['path']) . '" '
        . $imagedata['geometry']
        . 'id="fullsize_image" alt="'
        . htmlspecialchars($imagedata['name'])
        . '" title="'
        . htmlspecialchars($imagedata['name'])
        . $LINEBREAK . $lang_fullsize_popup['click_to_close']
        . '" /></a><br />' . $LINEBREAK
        . '        </div>'.$LINEBREAK;
    }
    $fullsize_html .= <<<EOT
  </body>
</html>

EOT;

    $fullsize_html = CPGPluginAPI::filter('fullsize_html', $fullsize_html);
    echo $fullsize_html;
}
/******************************************************************************
** Section <<<theme_display_fullsize_pic>>> - END
******************************************************************************/


Ich hab sie momentan einfach ganz unten in der Theme hinzugefügt vor dem "?>".
Dadurch hat sich noch nichts geändert.. dann wollte ich den weiteren schritten folgen, allerdings häng ich jetzt an "function theme_html_picture()".
Die Zeile existiert in meiner theme.php auch nicht, also sollte ich sie wieder von der sample theme kopieren. Aber die sample theme sieht bei mir irgendwie total unübersichtlich aus  :o und jetzt weiß ich nicht, bis wohin ich die Zeile kopieren muss.

Αndré

Die Funktion theme_display_fullsize_pic hast du korrekt kopiert. Mehr brauchst du für die Vollbildansicht eigentlich auch gar nicht.

Faith92

Ok... dadurch hat sich aber gar nichts verändert. Das Favicon ist hier
http://faithys-graphics.de/gallery/albums/userpics/10001/ch497_1_Faith_BP.jpg
immer noch nicht sichtbar bzw. in Opera nicht sichtbar und in Firefox falsch dargestellt.

Αndré

Ich kann hier kein
<link rel="shortcut icon" href="/favicon.ico" />
finden. Das musst du natürlich noch zur Funktion theme_display_fullsize_pic hinzufügen ;)

Faith92

Ich hab es jetzt hier hinzugefügt:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=$charset" />
        <title>{$CONFIG['gallery_name']}: {$lang_fullsize_popup['click_to_close']}</title>
        <style type="text/css">
<link rel="shortcut icon" href="/favicon.ico" />
            body { margin: 0; padding: 0; background-color: gray; }
            img { margin:0; padding:0; border:0; }
            #content { margin:0 auto; padding:0; border:0; }
            table { border:0; width:{$row['pwidth']}px; height:{$row['pheight']}px; border-collapse:collapse}
            td { vertical-align: middle; text-align:center; }
        </style>

        <script type="text/javascript" src="js/jquery-1.3.2.js"></script>
        <script type="text/javascript" src="js/jquery.dimensions.pack.js"></script>
        <script type="text/javascript" src="js/displayimage.fullsize.js"></script>
    </head>
    <body style="margin:0px; padding:0px; background-color: gray;">


unter das <style type="text/css">

Und ich weiß nicht, ob du dich einfach vertan hast, aber ich mein ja den Link und da ist immer noch kein favicon :(

Joachim Müller

Quote from: http://documentation.coppermine-gallery.net/en/theme_examples.htm#theme_examplesThis page will only explain what sections of theme.php need editing to accomplish particular extra features. You need to read up how to copy those sections first. If you're not familiar with this, read up The sample theme - a template to copy from; this entire page assumes that you have read and understood that section.

Quote from: Faith92 on November 01, 2010, 09:58:44 PMUnd ich weiß nicht, ob du dich einfach vertan hast, aber ich mein ja den Link und da ist immer noch kein favicon :(
Kein Browser der Welt stellt ein Favicon dar beim Anzeigen eines Bildes.

Αndré

Quote from: Faith92 on November 01, 2010, 09:58:44 PM
ich mein ja den Link und da ist immer noch kein favicon :(
Hättest du das von Anfang an gesagt, hätten wir dir sofort sagen können, dass das nicht geht. Wie auch? Du rufst eine Datei auf. Coppermine ist an dieser Stelle gar nicht im Spiel.

Du hast jedoch an folgender Stelle bemängelt, dass kein Favicon angezeigt wird:
Quote from: Faith92 on October 15, 2010, 06:51:38 PM
Bild: http://faithys-graphics.de/gallery/displayimage.php?pid=2117&fullsize=1 (favicon nicht zu sehen)
Besuche ich diese Seite, finde ich jedoch nach wie vor den Eintrag für das Favicon nicht (den du übrigens nicht innerhalb des style-Tags platzieren solltest).

Faith92

Quote from: Αndré on November 02, 2010, 09:23:35 AM
Hättest du das von Anfang an gesagt, hätten wir dir sofort sagen können, dass das nicht geht. Wie auch? Du rufst eine Datei auf. Coppermine ist an dieser Stelle gar nicht im Spiel.

Hm und wieso ist das dann bei anderen Coppermineuser möglich, nur bei mir nicht? Nur weil es bei anderen sichtbar ist und bei mir nicht, bin ich auf die Idee gekommen, dass bei mir irgendwas falsch ist.

Quote from: Αndré on November 02, 2010, 09:23:35 AM
Du hast jedoch an folgender Stelle bemängelt, dass kein Favicon angezeigt wird:Besuche ich diese Seite, finde ich jedoch nach wie vor den Eintrag für das Favicon nicht (den du übrigens nicht innerhalb des style-Tags platzieren solltest).

Ja, stimmt. Aber das Problem vom 15.10. hatte sich bei mir erledigt, sonst hätte ich das Thema vorerst nicht als gelöst markiert und gemeint es würde jetzt gehen. Bei dem Link seh ich das Favicon, egal mit welchem Browser. Komisch, dass du das jetzt nicht siehst (andere sehen es auch).

Jedenfalls nach Joach Müllers Post ist mir dann aufgefallen, dass der andere Link, von dem wir jetzt reden, nicht funktioniert und da dachte ich, dass ich die entsprechenden Schritte von http://documentation.coppermine-gallery.net/en/theme_examples.htm#theme_examples_content_fullsize machen müsste, was aber anscheinend doch nichts mit dem Link zu tun hat...  ???

Naja, ist auch nur eine Kleinigkeit, von der ich dachte sie ist einfach zu lösen, aber wenn's nichts mit Coppermine zu tun hat, dann weiß ich auch nicht weiter. :D


Αndré

Quote from: Faith92 on November 02, 2010, 03:27:24 PM
Hm und wieso ist das dann bei anderen Coppermineuser möglich, nur bei mir nicht? Nur weil es bei anderen sichtbar ist und bei mir nicht, bin ich auf die Idee gekommen, dass bei mir irgendwas falsch ist.
Zeig bitte mal einen Link wo das möglich ist. Ich glaube wir reden hier aneinander vorbei.


Quote from: Faith92 on November 02, 2010, 03:27:24 PM
Komisch, dass du das jetzt nicht siehst (andere sehen es auch).
Ich habe nicht behauptet, dass ich das Favicon nicht sehe, sondern dass ich die entsprechende Code-Zeile wie von Joachim vorgeschlagen nirgends in deinem Code entdecken kann:
Quote from: Joachim Müller on October 19, 2010, 07:39:41 AM
Um's wirklich richtig zu machen (damit alle Browser, die dazu in der Lage sind das Favicon auch anzeigen) solltest Du [..] den HTML-Tag <link rel="shortcut icon" href="/favicon.ico" />einfügen. Das wäre die technisch saubere und valide Lösung.


Wenn für dich jedoch alles funktionier wie gewünscht, kannst du das Thema als gelöst markieren und alle sind zufrieden :)

Faith92

Ok, erst mal hier das Beispiel.
Mein Link: http://faithys-graphics.de/gallery/albums/userpics/10001/ch497_1_Faith_BP.jpg -> Kein Favicon
Anderer Link: http://starlights-graphics.de/gallery/albums/userpics/10001/LIA_Ch069_Starlight.png -> Favicon

Quote from: Αndré on November 02, 2010, 03:36:38 PM
Ich habe nicht behauptet, dass ich das Favicon nicht sehe, sondern dass ich die entsprechende Code-Zeile wie von Joachim vorgeschlagen nirgends in deinem Code entdecken kann:

Achsooo verstehe. Ich hab

<link rel="shortcut icon" href="/favicon.ico" />

jetzt auch aus den style-Tags rausgenommen und drunter gesetzt.. oh man, war ein Versehen.
Diese Code-Zeile in der theme.php meinst du doch, oder?

Αndré

Quote from: Faith92 on November 02, 2010, 06:48:28 PM
Mein Link: http://faithys-graphics.de/gallery/albums/userpics/10001/ch497_1_Faith_BP.jpg -> Kein Favicon
Anderer Link: http://starlights-graphics.de/gallery/albums/userpics/10001/LIA_Ch069_Starlight.png -> Favicon
Ich kann bei beiden kein Favicon sehen. Jedoch zeigt mir Firefox bei beiden Links eine kleine Version des Bildes an. Vielleicht verwechselst du das mit dem Favicon.


Quote from: Faith92 on November 02, 2010, 06:48:28 PM
Ich hab

<link rel="shortcut icon" href="/favicon.ico" />

jetzt auch aus den style-Tags rausgenommen und drunter gesetzt.. oh man, war ein Versehen.
Diese Code-Zeile in der theme.php meinst du doch, oder?
Ja das meinte ich, allerdings sehe ich diese Änderung nach wie vor nicht in deiner Galerie.

Faith92

Bei Firefox stimm ich dir zu, da seh ich auch eine kleine Version des Bildes. Aber mit Opera, Google Chrome und IE seh ich ein Favicon.. hm. Ich versteh nicht, wieso du dann bei beiden keines siehst, ich aber nur bei der anderen Seite.
Wenn es am Browser liegen würde, müsste ich entweder das Favicon überall sehen oder nirgendwo, aber das ist nicht der Fall und das macht mich stutzig  ??? ;D

Joachim Müller

Du scheinst es nicht wahrhaben zu wollen, deshalb nochmals:
Quote from: Joachim Müller on November 02, 2010, 08:37:33 AMKein Browser der Welt stellt ein Favicon dar beim Anzeigen eines Bildes.
Die Tatsache, dass manche Browser (so z.B. Mozilla Firefox) eine Miniatur eines Bildes in der Adresszeile darstellen hat doch nichts mit einem Favicon zu tun: Firefox zeigt immer die Miniatur des jeweiligen Bildes und niemals ein Favicon (d.h. eine weitere Grafikdatei) an, wenn ein Bild dargestellt wird. Deshalb schrieb Αndré:
Quote from: Αndré on November 02, 2010, 06:56:33 PMVielleicht verwechselst du das mit dem Favicon.
Wir haben - ganz egal wie Du es drehst und wendest - keinerlei Kontrolle über die Features eines Browsers.

Faith92

Ok, ich vertrau natürlich auf euch.. aber verwechselt hab ich nichts. ;)
Bei mir wird ein favicon und nicht die Miniatur eines Bildes angezeigt.. was dann aber wahrscheinlich Zufall ist und die Browser einem anzeigen, was sie wollen. Anders kann ich's mir auch nicht erklären, wieso es einige sehen und andere nicht.
Danke für die Hilfe. Dass man selbst keinen Einfluss drauf hat, weiß ich nun. :)