Startseite     FAQ     Letzte Änderungen

P.php

Aus Melin WebHelp

Wechseln zu: Navigation, Suche

Script für einen Webserver zur Zählung von Klicks und Öffnungen

[bearbeiten] Dateien und Downloads

Das Script kann in der aktuellen Version aus dem SVN (Subversion) Repository geladen werden:

p.php, Öffnungsrate und Klicks messen in PHP

http://www.melinupdate.de/svn/melin3/melin3.stable/htdocs/melin/php/p.php

j.jsp, Öffnungsrate und Klicks messen in Java

http://www.melinupdate.de/svn/melin3/melin3.stable/htdocs/melin/j.jsp

[bearbeiten] Verwandte Module

  • p.asp ASP-Version des KlickTrackers
  • j.jsp JSP-Version des KlickTrackers
  • p.pl Perl-Version des KlickTrackers
  • p.php PHP-Version des KlickTrackers


[bearbeiten] Code p.php (Stand 2007)

Für Produktivumgebungen sollte immer der aktuelle Stand aus dem Subversion-Repository verwendet werden.

<?php
 
	//
	// P.PHP - Sample file to redirect users ("Clicktrack")
	// 

	// ---------------------------------------------------------------------
	// MMDB Database

	$MMDB_SERVER            = "127.0.0.1";
	$MMDB_LOGIN             = "root";
	$MMDB_PASSWORD          = "";
	$MMDB_DB               = "melin_system";

	//
	// Failover link - In case someone fools around
	// Put this to your homepage or a special redirect "welcome, something went wrong" page
	//
	  
	$link = "http://www.melin.de/failed.html";
  
  
    // ---------------------------------------------------------------------
    // FX SECTON - DO NOT CHANGE
    // ---------------------------------------------------------------------
    
	// The magic Seb transformation to make code cooler and life easier
	// board.php?board=110&SESSION=123 -> $board=110 and $SESSION=123

        $xmlstring = "";
    	$counter   = 0;

        $PHP_SELF = $_SERVER['PHP_SELF'];
        while (list($key,$val) = each($HTTP_POST_VARS)) {
                                ${$key} =  $val;
                                }
        while (list($key,$val) = each($HTTP_GET_VARS)) {
                                ${$key} =  $val;
                                }


        $dblink = mysql_pconnect ($MMDB_SERVER , $MMDB_LOGIN , $MMDB_PASSWORD); 
        $dblink2 = mysql_pconnect ($MMDB_SERVER , $MMDB_LOGIN , $MMDB_PASSWORD); 

	mysql_select_db ($MMDB_DB); 

	if ($ID > 0) {						
		$query = "SELECT * FROM LOG_LINKREF WHERE ID = '$ID'";
		if ($result =mysql_query ($query ,$dblink )) { 	
			$link = "http:" . mysql_result($result, 0, "TARGET");
	
			$email = "";
			$query2 = "SELECT * FROM SC_DETAILS WHERE SYSTEM_CUSTOMER_ID = '" . mysql_result($result, 0, "SYSTEM_CUSTOMER_ID") ."'";
			if ($result2 =mysql_query ($query2 ,$dblink2 )) {   	
					$email = mysql_result($result2, 0, "EMAIL");
					}
			
			// Das war ein Klick - Jetzt Vermerk in Datenbank
			$curtime = time();
			$result = mysql_query("INSERT INTO  LOG_CLICKTRACK (  ID ,  LOG_LINKREF_ID ,  SYSTEM_CUSTOMER_ID ,  LINK , " .
										"LOG_MAILING_ID ,  CREATED ,  NEWSLETTER_ID ,  COMPLETED ,  EMAIL ,  TARGET ) ". 
									"VALUES ('$curtime',  '$ID',  '" . mysql_result($result, 0, "SYSTEM_CUSTOMER_ID") . 
										"',  '$ID',  '" . mysql_result($result, 0, "MAILING_ID") .
										"',  '$curtime', '" . mysql_result($result, 0, "MAILING_ID") . "' ,  '1', '$email' ,  '$link')", $dblink);
 	
 		}
 	} 
 
 	//
 	// Sonderfall - Blindpixel Oeffnung
 	//
 
 	if ($OC > 0) {						

			$email = "";
			$query2 = "SELECT * FROM SC_DETAILS WHERE SYSTEM_CUSTOMER_ID = '$OC'";
			if ($result2 =mysql_query ($query2 ,$dblink2 )) {   	
					if ($row = mysql_fetch_row($result2)) {
					$email = mysql_result($result2, 0, "EMAIL");
					}
				}
			
			// Das war ein Klick - Jetzt Vermerk in Datenbank
			$curtime = time();
			$result = mysql_query("INSERT INTO  LOG_CLICKTRACK (  ID ,  LOG_LINKREF_ID ,  SYSTEM_CUSTOMER_ID ,  LINK , " .
										"LOG_MAILING_ID ,  CREATED ,  NEWSLETTER_ID ,  COMPLETED ,  EMAIL ,  TARGET ) ". 
									"VALUES ('$curtime',  '0',  '$OC',  ' ',  '$ML',  '$curtime', '$NL' ,  '1', '$email' ,  'OPEN')", $dblink);
	
			header('Content-type: image/gif');
			$cgif = chr(71) . chr(73) . chr(70) . chr(56) . chr(57) . chr(97) . chr(1) . chr(0) . 
					chr(1) . chr(0) . chr(128) . chr(0) . chr(0) . chr(255) . chr(255) . chr(255) . 
					chr(0) . chr(0) . chr(0) . chr(33) . chr(249) . chr(4) . chr(1) . chr(0) . 
					chr(0) . chr(0) . chr(0) . chr(44) . chr(0) . chr(0) . chr(0) . chr(0) . chr(1) . 
					chr(0) . chr(1) . chr(0) . chr(0) . chr(2) . chr(2) . chr(68) . chr(1) . chr(0) . 
					chr(59) . chr(10);	
			print $cgif;	
			exit;	
	} // OPEN RATE TRACKER

	header('Location: '. $link); 

  ?>