[Final] Partner Mod / [Final] Partner Mod 2.1

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

[Final] Partner Mod / [Final] Partner Mod 2.1

Beitrag von fanrpg »

Partner Mod 2.1


Link zur Beschreibung vom Partner Mod 2.1: http://www.phpbb.de/viewtopic.php?p=746148#746148

--

Partner Mod 1.x.x

Also mir kam heute eine Idee, weil viele Boards Partner haben und man keine genaue Auskunft darüber kriegt wie viele Klicks so ein Partner erzeugt habe ich schnell was geschrieben das sieht so aus:

http://www.fanrpg.de/mods/partner.php

und das ist noch eine Datei die die Aurfufe zählt die wird in die index.php includiert die sieht so aus:

Code: Alles auswählen

<?php
if($_GET['partner'] != "")
{
$partnerid = $_GET['partner'];
$sql_plus = "SELECT * FROM `".$table_prefix."partner` WHERE `partner` = '".$partnerid."'";
$sql_plus_result = mysql_query($sql_plus) or sql_error($sql_plus, "3");
while($row_partner = mysql_fetch_assoc($sql_plus_result))
{
if($_GET['partner'] != "")
  {
  if($_GET['partner'] != $row_partner['partner'])
    {
      message_die(GENERAL_ERROR, "Partner ID nicht vorhanden", "", __LINE__, __FILE__, $sql);
    }
    else
    {
      define('PARTNER_OK', true);
    }
  }	

  $sql_partnerid = $row_partner['partner'];
  $clicks = $row_partner['clicks'];
  
}


if(defined('PARTNER_OK'))
{
  if($_GET['partner'] == $sql_partnerid)
  {
    $clicks++;
	$new_clicks = $clicks;
    $sql_plus1 = "UPDATE `".$table_prefix."partner` SET `clicks` = '".$new_clicks."' WHERE `partner` = '".$partnerid."'";
    $result_plus = mysql_query($sql_plus1) or sql_error($sql_plus1, "3");
  }

}
}
?>
und die partner.php sieht so aus:

Code: Alles auswählen

echo '<table border="0" class="forumline" width="50%" align="center">
<tr>
<td class="gen" align="center" width="50%"><b>Name / Nummer des Partners</b></td>
<td class="gen" align="center" width="50%"><b>Klicks von der Partnerseite</b></td>
</tr>';
$sql = "SELECT * FROM `".$table_prefix."partner`";
$result = mysql_query($sql) or sql_error($sql, "3");
while($row = mysql_fetch_assoc($result))
{
?>
<tr>
<td align="center" class="gensmall"><?= $row['partner'] ?></td>
<td align="center" class="gensmall"><?= $row['clicks'] ?></td>
</tr>
<?
}
echo '</table><br />';


if ( $userdata['user_level'] == ADMIN )
{
if(isset($_POST['new_submit']))
{
$newest_partner = $_POST['new_partner'];
$newest_partner = htmlspecialchars($newest_partner);
$sql_insert = "INSERT INTO `".$table_prefix."partner` (`partner`) VALUES ('".$newest_partner."')";
$result = mysql_query($sql_insert) or sql_error($sql_insert, "3");
echo '<meta http-equiv="refresh" content="1 url=partner.php?ok=ok">';
}
echo '<table border="0" width="100%" class="forumline">
<tr>
<td class="row2" align="center">Administration</td>
</tr>
<tr>
<td class="row1">Einen Partner hinzufügen:<br />
<form method="post">
Name oder Nummer des neuen Partners: <input type="text" name="new_partner"><br />
<input type="submit" name="new_submit" value="Absenden">
</form>
</td>
</tr>
</table>';
}
Und die Links werden gezählt wenn man die index.php mit einer partner id aufruft also so z.B index.php?partner=bla dann wird dem partner bla ein Klick gutgeschrieben

Und jetzt meine Frage, besteht Interesse an dem Mod?

Wenn ja dann würde ich ihn in die lang dateine packen und nen Template Syntax verpassen

Also besteht Interesse an sowasß

Aktuelle Version: Final 1.1.0
Download: http://fanrpg.com/download.php?dl=partnermod_1_1_0.zip
Zuletzt geändert von fanrpg am 15.10.2006 00:18, insgesamt 12-mal geändert.
240709Gast

Beitrag von 240709Gast »

Jepp Interesse besteht! So kann man seine Partner dann besser an die Benutzer des Forums anpassen.


Gibt es vielleicht noch eine möglichkeit da zu ergänzen, wie viele Leute "von" der Partnerseite gekommen sind?

Also Quasi so:

Partner ID // Clicks Out // Clicks In

?



mfg, Cold
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Cold hat geschrieben:Jepp Interesse besteht! So kann man seine Partner dann besser an die Benutzer des Forums anpassen.


Gibt es vielleicht noch eine möglichkeit da zu ergänzen, wie viele Leute "von" der Partnerseite gekommen sind?
Verstehe zwar nicht so recht was du meinst aber gehen tut so ziemlich alles mit PHP
240709Gast

Beitrag von 240709Gast »

Jepp Interesse besteht! So kann man seine Partner dann besser an die Benutzer des Forums anpassen.


Bedeutet: Man sieht, ob die User Interesse an dem Partner haben und ob sich eine Partnerschaft dementsprechend überhaupt lohnt (für den Partner).
Gibt es vielleicht noch eine möglichkeit da zu ergänzen, wie viele Leute "von" der Partnerseite gekommen sind?
Bedeutet: Ob sich eine Partnerschaft mit dem Partner für einen selbst lohnt.


Jetzt verstanden? ;) Ist vll ein wenig merkwürdig ausgedrückt, wohl aber ganz verständlich jetzt ^^



mfg, Cold
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Also Punkt1 hmm da muss ich mal gucken aber ich denke irgendwie wird es schon klappen im Notfall kann er ja den Mod dann auch installen :D

Zu Punkt2 das ist ja der Sinn des Mods und das macht er ja schon
240709Gast

Beitrag von 240709Gast »

Zu 2) Aso ^^... hab gedacht er zählt die klicks die weggehen, nicht die, die ankommen... Dann ist es ja schon Perfekt ;)...

Zu 1) Hat sich dann ja fast erledigt, ausser du hast Interesse daran einen komplett neuen Partner-MOD zu schreiben ;)


mfg, Cold
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Gut dann vergrabe ich mich mal wieder in der Doku um nen funktionierenden Template Syntax hinzukriegen :wink:
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

So hab jetzt mal die erste version fertiggestellt :D

Code: Alles auswählen

## EasyMod compliant
##############################################################
## MOD Title: Partner Mod - Beta
## MOD Author: fanrpg < alexanderschumacher@gmx.de > (Alexander Schumacher) www.fanrpg.de
## MOD Description: Zählt die Klicks von den Partnerseiten und schreibt diese 
##                  in die DB
##                  
##                  CHMOD kompatibel
## MOD Version: 0.0.1
##
## Installation Level: Easy
## Installation Time: 10 min
## Files To Edit: 4
##                includes/functions.php
##                index.php
##                language/lang_english/lang_main.php
##                language/lang_main.php
## Included Files:  partner.php
##                  clicks_mod.php
##                  templates/subSilver/partner_bpdy.tpl
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/downloads/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MODs not offered
## in our MOD-Database, located at: http://www.phpbb.com/mods/downloads/
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################

#
#-----[ OPEN ]------------------------------------------
#
  includes/functions.php
#
#-----[ FIND ]------------------------------------------
#
function redirect($url)
{
	global $db, $board_config;

	if (!empty($db))
	{
		$db->sql_close();
	}

	if (strstr(urldecode($url), "\n") || strstr(urldecode($url), "\r"))
	{
		message_die(GENERAL_ERROR, 'Tried to redirect to potentially insecure url.');
	}

	$server_protocol = ($board_config['cookie_secure']) ? 'https://' : 'http://';
	$server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['server_name']));
	$server_port = ($board_config['server_port'] <> 80) ? ':' . trim($board_config['server_port']) : '';
	$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
	$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
	$url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));

	// Redirect via an HTML form for PITA webservers
	if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
	{
		header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
		echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>';
		exit;
	}

	// Behave as per HTTP/1.1 spec for others
	header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
	exit;
}
#
#-----[ AFTER, ADD ]------------------------------------------
#
// Start Add - Partner Mod
function sql_error($query, $fehlertype)
{
if($fehlertype == "0")
{
echo("Ein unerwarteter Fehler ist aufgetreten");
}
elseif($fehlertype == "1")
{
die("Ein unerwarteter Fehler ist aufgetreten");
}
elseif($fehlertype == "2")
{
die(mysql_error());
}
elseif($fehlertype == "3")
{
die("MySQL Fehler: ". mysql_error() . "<br />SQL: ".$query."<br />");
}
}
// End Add - Partner Mod
#
#-----[ OPEN ]------------------------------------------
#
  index.php
#
#-----[ FIND ]------------------------------------------
#
//
// Start session management
//
#
#-----[ BEFORE, ADD ]------------------------------------------
#
include($phpbb_root_path . 'clicks_mod'.$phpEx);

#
#-----[ OPEN ]------------------------------------------
#
  language/lang_german/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
?>
#
#-----[ BEFORE, ADD ]------------------------------------------
#
$lang['partner_clicks'] = 'Klicks';
$lang['partner_name'] = 'Name oder Nummer des Partners';
$lang['partner_insert'] = 'Partner hinzufügen';
$lang['partner_name_or_number'] = 'Name oder Nummer des Partners';
$lang['partner_absenden'] = 'Abschicken';
$lang['partner_admin'] = 'Administration';
$lang['partner_clicks_from'] = 'Klicks vom Partner';
#
#-----[ OPEN ]------------------------------------------
#
  language/lang_english/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
?>
#
#-----[ BEFORE, ADD ]------------------------------------------
#
$lang['partner_clicks'] = 'Clicks';
$lang['partner_name'] = 'Name / Number of Pard';
$lang['partner_insert'] = 'Pard add';
$lang['partner_name_or_number'] = 'Name or Number of Pard';
$lang['partner_absenden'] = 'Subscribe';
$lang['partner_admin'] = 'Administration';
$lang['partner_clicks_from'] = 'Clicks from Pard';
#
#-----[ SQL ]------------------------------------------
#
CREATE TABLE `phpbb_partner` (
  `ID` int(11) NOT NULL auto_increment,
  `partner` varchar(255) NOT NULL default '',
  `clicks` int(255) NOT NULL default '0',
  PRIMARY KEY  (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=0 ;

#
#-----[ COPY ]------------------------------------------
#
copy partner.php to partner.php
copy clicks_mod.php to clicks_mod.php
copy templates/subSilver/partner_body.tpl to templates/subSilver/partner_bpdy.tpl
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
#
Hab auf die schnelle keine Fehler gefunden

hier der DL: http://www.fanrpg.de/partnermod_beta_vier.zip
Zuletzt geändert von fanrpg am 25.09.2005 16:56, insgesamt 1-mal geändert.
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

So neue version:

- Engine optimiert
- Administrationsbug entfernt
- Löschen von Partnern möglich
- Zählung der Clicks anhand der ID und nicht mehr über den namen
- und kleinere Bugfixes

Hier der DL: http://www.fanrpg.de/partnermod_beta_vier.zip

EDIT: :oops: Und 3 Bugs in der Engine behoben
Zuletzt geändert von fanrpg am 25.09.2005 16:56, insgesamt 1-mal geändert.
Benutzeravatar
bordum
Mitglied
Beiträge: 168
Registriert: 12.08.2005 09:30
Wohnort: Dresden
Kontaktdaten:

Beitrag von bordum »

Cool, wenn es realeased werde ich es sofort einbauen

:grin:
vampirghul.de
Das düstere Forum
Signaturen dürfen maximal 3 Zeilen lang sein
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“