Vorschläge

In this board you can talk about general questions about phpMyFAQ

Moderator: Thorsten

Post Reply
COOLover
Posts: 16
Joined: Fri Mar 30, 2007 1:17 pm
Location: Nienburg
Contact:

Vorschläge

Post by COOLover »

- XML/PDF für eine Komplette Kategorie

- Impressum <br /> / neue Zeile funktioniert nicht.
- Impressum nicht Begrenzen (ich habs über template bearbeiten z.Zt. gemacht.)

- Session nicht in die Log speichern wenn im "Browser:" xyz vorhanden ist. z.B. Google

Beispiele

Code: Select all

IRLbot/3.0 (compatible, MSIE 6.0, http://irl.cs.tamu.edu/crawler)
Mozilla/5.0 (compatible, Googlebot/2.1, +http://www.google.com/bot.html)
Google-Sitemaps/1.0
W3C_Validator/1.432.2.22
Jigsaw/2.2.5 W3C_CSS_Validator_JFouffa/2.0
>>Greetz COOLover<<
Thorsten
Posts: 15743
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Re: Vorschläge

Post by Thorsten »

Hi,
- XML/PDF für eine Komplette Kategorie
gibts doch schon im Adminbereich unter Export.
- Impressum <br /> / neue Zeile funktioniert nicht.
- Impressum nicht Begrenzen (ich habs über template bearbeiten z.Zt. gemacht.)
Guck ich mir an.
- Session nicht in die Log speichern wenn im "Browser:" xyz vorhanden ist. z.B. Google
hm, da bräuchte ich halt mal eine Blacklist oder sowas in der Art...

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
COOLover
Posts: 16
Joined: Fri Mar 30, 2007 1:17 pm
Location: Nienburg
Contact:

Re: Vorschläge

Post by COOLover »

- XML/PDF für eine Komplette Kategorie

gibts doch schon im Adminbereich unter Export.
Naja ich meint sowas wie die Top10/Neusten, das das automatisch von user gemacht werden kann
- Impressum <br /> / neue Zeile funktioniert nicht.
- Impressum nicht Begrenzen (ich habs über template bearbeiten z.Zt. gemacht.)

Guck ich mir an.
Also ich habe bei mir so gemacht
Zusätzliche Infos in das Template
und wegen neuer zeile (datei:contact.php / zeile:36):

Code: Select all

    'msgContactOwnText'     => $faqconfig->get('main.contactInformations'),
dann funktioniert <br /> ;)
- Session nicht in die Log speichern wenn im "Browser:" xyz vorhanden ist. z.B. Google

hm, da bräuchte ich halt mal eine Blacklist oder sowas in der Art...
Hier ne kleine liste die ich kenne
'nustcrape','webpost','google','crawler','scooter','bravobrian','archiver','w3c','control','wget','bot','spider','Yahoo! Slurp'
>>Greetz COOLover<<
Thorsten
Posts: 15743
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

ich schau mal, was ich noch in die 2.0.0-beta2 reinbringen kann.

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
COOLover
Posts: 16
Joined: Fri Mar 30, 2007 1:17 pm
Location: Nienburg
Contact:

Post by COOLover »

Habe warscheinlich die lösung zur Spider Sperrung.

Habe eben die Tracking function geändert.
Ob es erfolgreich war melde ich gegen 10/11h.
Sollte es klappen geb ich den Code.

OT: Habe dich mal im ICQ geadded.
>>Greetz COOLover<<
Thorsten
Posts: 15743
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

wow, vielen Dank. Ich werde aber erst nach Ostern dazu kommen, dass dann noch einzubauen.

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
COOLover
Posts: 16
Joined: Fri Mar 30, 2007 1:17 pm
Location: Nienburg
Contact:

Post by COOLover »

Also google hat mich laut Benutzersession seit gestern nimmer besucht (dank dem Code).
Yahoo steht jedoch noch drin.

diesen code

Code: Select all

function Tracking($action, $id = 0)
{
    global $db, $PMF_CONF, $sid, $user;

    if (isset($PMF_CONF["main.enableUserTracking"])) {
        if (isset($_GET["sid"])) {
            $sid = $_GET["sid"];
        }
        if (isset($_COOKIE['pmf_sid'])) {
            $sid = $_COOKIE['pmf_sid'];
        }
        if ($action == "old_session") {
            $sid = null;
        }
        if (!isset($sid)) {
            $sid = $db->nextID(SQLPREFIX."faqsessions", "sid");
            // HACK: be sure that pmf_sid cookie contains the current $sid
            if (isset($_COOKIE["pmf_sid"]) && ((int)$_COOKIE['pmf_sid'] != $sid)) {
                setcookie('pmf_sid', $sid, time() + 3600);
            }
            $db->query("
                    INSERT INTO
                        ".SQLPREFIX."faqsessions
                        (sid, user_id, ip, time)
                    VALUES
                        (".$sid.", ".($user ? $user->getUserId() : '-1').", '".$_SERVER["REMOTE_ADDR"]."', ".time().")"
                    );
        }
        $fp = @fopen("./data/tracking".date("dmY"), "a+b");
        if (function_exists("stream_encoding")) {
            stream_encoding($fp, "iso-8859-1");
        }
        if ($fp) {
            $flanz = "0";
            while (!flock($fp, LOCK_EX) && $flanz < 6) {
                wait(500);
                $flanz++;
            }
            if ($flanz >= 6) {
                fclose($fp);
            } elseif ((!empty($_SERVER["HTTP_REFERER"])) || ($action == "new_session")) {
                if (!isset($_SERVER["HTTP_REFERER"])) {
                    $_SERVER["HTTP_REFERER"] = "";
                }
                if (!isset($_SERVER["QUERY_STRING"])) {
                    $_SERVER["QUERY_STRING"] = "";
                }
                fputs($fp, $sid.";".str_replace(";", ",",$action).";".$id.";".$_SERVER["REMOTE_ADDR"].";".str_replace(";", ",", $_SERVER["QUERY_STRING"]).";".str_replace(";", ",", $_SERVER["HTTP_REFERER"]).";".str_replace(";", ",", urldecode($_SERVER["HTTP_USER_AGENT"])).";".time().";\n");
                flock($fp, LOCK_UN);
                fclose($fp);
            }
        }
    }
}

durch diesen ersetzen

Code: Select all

function Tracking($action, $id = 0)
{
    global $db, $PMF_CONF, $sid, $user;

    if (isset($PMF_CONF["main.enableUserTracking"])) {
        if (isset($_GET["sid"])) {
            $sid = $_GET["sid"];
        }
        if (isset($_COOKIE['pmf_sid'])) {
            $sid = $_COOKIE['pmf_sid'];
        }
        if ($action == "old_session") {
            $sid = null;
        }

$bots=0;
$agent=$_SERVER['HTTP_USER_AGENT'];

$blacklist = array('nustcrape','webpost','google','crawler','scooter','bravobrian','archiver','w3c','control','wget','bot','spider','Yahoo! Slurp');
foreach($blacklist as $checkit) {
if(preg_match ("=$checkit=i", $agent)) { $bots++; } }
if(empty($agent)) { $bots++; }
if(empty($bots)) {

        if (!isset($sid)) {
            $sid = $db->nextID(SQLPREFIX."faqsessions", "sid");
            // HACK: be sure that pmf_sid cookie contains the current $sid
            if (isset($_COOKIE["pmf_sid"]) && ((int)$_COOKIE['pmf_sid'] != $sid)) {
                setcookie('pmf_sid', $sid, time() + 3600);
            }
            $db->query("
                    INSERT INTO
                        ".SQLPREFIX."faqsessions
                        (sid, user_id, ip, time)
                    VALUES
                        (".$sid.", ".($user ? $user->getUserId() : '-1').", '".$_SERVER["REMOTE_ADDR"]."', ".time().")"
                    );
        }
        $fp = @fopen("./data/tracking".date("dmY"), "a+b");
        if (function_exists("stream_encoding")) {
            stream_encoding($fp, "iso-8859-1");
        }
        if ($fp) {
            $flanz = "0";
            while (!flock($fp, LOCK_EX) && $flanz < 6) {
                wait(500);
                $flanz++;
            }
            if ($flanz >= 6) {
                fclose($fp);
            } elseif ((!empty($_SERVER["HTTP_REFERER"])) || ($action == "new_session")) {
                if (!isset($_SERVER["HTTP_REFERER"])) {
                    $_SERVER["HTTP_REFERER"] = "";
                }
                if (!isset($_SERVER["QUERY_STRING"])) {
                    $_SERVER["QUERY_STRING"] = "";
                }
                fputs($fp, $sid.";".str_replace(";", ",",$action).";".$id.";".$_SERVER["REMOTE_ADDR"].";".str_replace(";", ",", $_SERVER["QUERY_STRING"]).";".str_replace(";", ",", $_SERVER["HTTP_REFERER"]).";".str_replace(";", ",", urldecode($_SERVER["HTTP_USER_AGENT"])).";".time().";\n");
                flock($fp, LOCK_UN);
                fclose($fp);
            }
        }
 }
    }
}
>>Greetz COOLover<<
Thorsten
Posts: 15743
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

ist in der beta2 drin. Danke!

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Post Reply