Seite 9 von 11

Verfasst: 28.09.2006 18:21
von Harki
Ich meine, auf eine sicherheitstechnische Bedenklichkeit dieses MODs aufmerksam geworden zu sein...

Um vom larsneos Original auszugehen:

Code: Alles auswählen

if ( isset($HTTP_GET_VARS[POST_TOPIC_URL]) )
Wenn der nichteingeloggte User Maximin (irgendein Nichteingeloggter halt), auf ein Thema geht, das zu sehen ihm verwehrt ist - beispielsweise, weil es nur für Eingelogggte oder gar nur für Mods/Admins sichtbar ist, dann wird er zum Login weitergekickt:

http://www.knuddelforum.de/login.php?re ... p&t=120752

Nur: die Keywords bekommt er schon auf der Loginseite im Quelltext zu sehen, da das topic ja schon definiert ist...

Also z.B.

Code: Alles auswählen

<meta name="keywords" content="arschloch, maximin, wirklich, riesengroßes, *kotz*" />
;)

Man sollte das so korrigieren, meine ich:

Code: Alles auswählen

if ( isset($HTTP_GET_VARS[POST_TOPIC_URL]) && empty($HTTP_POST_VARS['redirect']) && empty($HTTP_GET_VARS['redirect']) )
Korrekturen an der Korrektur hochwillkommen, wie man sich denken kann.

Verfasst: 09.11.2006 16:10
von Keith
Ich stehe vor folgendem Problem... in meinem Lexikon (Lexicon v2) steht immer die Standard-Discription und die Standrad-Keywords.

Hier der Teil aus meiner page_header.php

Code: Alles auswählen

if ( isset($HTTP_GET_VARS[POST_TOPIC_URL]) )
{
$topic_id = intval($HTTP_GET_VARS[POST_TOPIC_URL]);
}
else if ( isset($HTTP_GET_VARS['topic']) )
{
$topic_id = intval($HTTP_GET_VARS['topic']);
}

if ( $topic_id )
{
$sql = "SELECT c.cat_title, f.forum_name, t.topic_title
FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . CATEGORIES_TABLE . " c
WHERE f.forum_id = t.forum_id
AND c.cat_id = f.cat_id
AND t.topic_id = $topic_id";
if( ($result = $db->sql_query($sql)) )
{
if ( $meta_row = $db->sql_fetchrow($result) )
{
$meta_description = '<meta name="description" content="' . $meta_row['topic_title'] . ' - ' . $meta_row['forum_name'] . ' - ' . $meta_row['cat_title'] . '">';
}
}
$sql = "SELECT w.word_text
FROM " . TOPICS_TABLE . " t, " . SEARCH_MATCH_TABLE . " m, " . SEARCH_WORD_TABLE . " w
WHERE t.topic_first_post_id = m.post_id
AND m.word_id = w.word_id
AND t.topic_id = $topic_id";
if( ($result = $db->sql_query($sql)) )
{
$meta_keywords = '';
while ( $meta_row = $db->sql_fetchrow($result) )
{
$meta_keywords .= ($meta_keywords=='') ? $meta_row['word_text'] : ' ' . $meta_row['word_text'];
}
$meta_keywords = '<meta name="keywords" content="' . $meta_row['topic_title'] . '' . $meta_keywords . '">';
}
} else {
$meta_description = '<meta name="description" content="Hier die Standard-Beschreibung">';
$meta_keywords = '<meta name="keywords" content=" Hier die Standard-Keywords">';
}
Optimal wäre es, wenn dann irgendwie noch eine If-Anweisung kommen würde, wo gecheckt wird, ob man im Lexikon ist und dass dann die Beschreibung sowie die Keywords aus den jeweiligen Beiträgen dort gezogen werden.

Kann mir da jemand helfen?

Verfasst: 09.11.2006 16:34
von mgutt
Optimal wäre, wenn Du die ganzen Metatags einfach löschst, den Titel der Seite so optimierst, dass die Titel des Lexikonbeitrages vorne stehen und das wars.

So sparst Du Dir auch die zusätzlichen Datenbankabfragen. In der heutigen Zeit bringen die Metas kaum noch was. Wobei aber dynamische noch besser sind, als statische Metas.. die sind natürlich für die Tonne. (gruß an den phpBB.de Admin ;) )

Wenn man es aber unbedingt haben will sollte man auch über Metas bei Foren nachdenken.

Gruß

Verfasst: 09.11.2006 17:37
von Keith
Kannst du mir dazu Hilfestellung geben?
Meine PHP-Kenntnisse sind eher bescheiden und sowas zu verwirklichen fällt mir recht schwer :(

Verfasst: 09.11.2006 18:37
von mgutt
erweitere den ersten Schleifenkonstrukt mit else if im gleichen Prinzip und hol die Variable "letter"
z.b.

Code: Alles auswählen

// letter
$letter = isset($HTTP_GET_VARS['letter']) ? htmlspecialchars($HTTP_GET_VARS['letter']) : '';
nur is letter gefüllt oder nicht.. je nachdem.

danach erweiterst du die äußerste schleife "if ($topic_id)" mit einer weiteren "else if ( $letter )" schleife

da kommt dann die datenbankabfrage rein um den wörter zu bekommen.

die abfrage findest du in deiner lexicon.php wo das ganze auch mit "if ($letter)" los geht.

Probier rum.. der Aufbau ist eigentlich gleich mit der gegebenen Geschichte.

Gruß

Verfasst: 25.11.2006 03:04
von NaRiSaH
Hallöchen

Ich habe kürzlich den Short URLs Reloaded gemeinsam mit diesem dynamischen Meta Tag Mod installiert und einen Fehler auf den dynamischen Meta Tag Mod zurückführen können, der bereits ein anderer User (Toni) in einem anderen Thread gemeldet hatte.

Hier sein Beitrag dazu *klick*

Ich habe den Fehler gesucht und habe festgestellt das es nicht Short URLs Mod liegt, vielmehr war es bei mir der dynamische Meta Mod der dieses Problem verursachte.

Als ich diesen Mod entfernt habe waren auch die Titellinks sowie die Last/Next Topic Links wieder korrekt. Irgendwie scheint es als sei der Titellink sowie die einzelnen Paginationslinks immer der letzte (der von der Vorseite wo man war) anstatt der aktuelle, wenn der Meta Mod drin ist, warum das so ist weiss ich auch nicht, aber ich konnte es eindeutig darauf zurückführen.

Ich habe es mehrmals getestet und sobald man den Codeteil des Meta Mods drin hat, ist dieser Bug da.

Wenn also der User Toni diesen Fehler immer noch hat und auch den Short URL Mod gemeinsam mit dem dynamischen Meta Mod einsetzt, bitte mal den Meta Mod entfernen und schauen ob der Fehler immer noch da ist.

Ansonsten funktioniert der "Short URLs für phpBB2 (reloaded / RFC)" *klick bei mir bis jetzt ohne Fehler.

Liebe Grüsse
NaRiSaH

Verfasst: 01.02.2007 10:32
von rolbx
Wie kann ich machen das die Description von Beitrag genommen wird? Und nicht von der Überschrift?

Weil bei mir sieht das Bei google so aus:
Aktuelles Datum und Uhrzeit: 23.01.2007, 10:07 computerforen.eu Foren-Übersicht · Registrieren Login · FAQ · Suchen · Mitgliederliste · Benutzergruppen ...

aber es soll so aussen:
Hallo zusammen, hätte mal gerne Eure Meinung zu folgender Thematik gehört: Seit 5 Jahren habe ich unter dem Kies einen Bodenfluter verlegt, der nach Ansicht ...

Verfasst: 01.02.2007 11:03
von mgutt
Meta-Tags sind für Google unrelevant. Google findet mit der Zeit selbstständig die Inhalte.

Du solltest Meta-Tags verwenden, wenn Du z.B. bei Meta-Suchmaschinen etwas erreichen willst.

Ein Beispiel:
http://www.google.de/search?q=site:maxr ... t=480&sa=N

Gruß

Verfasst: 01.02.2007 16:05
von rolbx
genauso meinte ich das:wink:


und wie richte ich das so ein??

Verfasst: 09.02.2007 17:14
von rolbx
niemand einen vorschlag :oops: