php, codeschnipsel, php beispielen
[Code] Klicks auf Werbebanner zählen

Main
Home
Fachbücher
Support Forum
Webmaster News
Script Newsletter
Kontakt
Script Installation
Php
Php Tutorials
Impressum

Userbereich
kostenlos Anmelden
Memberliste

Script Datenbank
Script Archiv
Script Top 20
Screenshots
Testberichte

Suche

 
Script Seite



Unsere Php Scripts
Counter Script
Umfrage Script
Bilder Upload Script
Terminverwaltung
Simple PHP Forum

Script Mods
phpBB Adsense Mod

Tools und Generatoren
.htpasswd Generatoren
md5 Generatoren
base64 Generatoren
ICQ Generatoren
Colorpicker
Unix timestamp Tool
TLD Liste
Webkatalog Verzeichnis

Partner
Sprüche Treff

Hosterplus.de
Bekommen Sie Webspace, Domains und Rootserver mit ...


clichehosting.c...
Webhoster mit recht einfachen Angeboten.


weitere Anbieter

RSS Webmaster Newsfeed von Php Space RSS Webmaster Newsfeed
RSS Script Newsfeed von Php Space RSS Script Newsfeed

Statistik
11 Gäste Online
0 Member Online
1087 Besucher heute
1080 Besucher gestern
 

[Code] Klicks auf Werbebanner zählen

Sie befinden sich: Home > Webmaster News

Wir wollen ein kleines Script entwickeln, mit dem wir Werbebanner auf unseren Seiten zufällig ausgeben lassen.

Werbende Firmen geben uns den Bannercode ja immer vor, der in der Regel so aussieht:

Quelltext: PHP
1
<a href='http://abc.com?code=xyz'><img src='http://abc.com/banner.jpg' width='468' height='60' border='0'></a>

Wir bauen uns zunächt eine kleine Tabelle "werb" mit folgendem Aufbau:

CREATE TABLE `werb` (
`lfd` int(10) unsigned NOT NULL auto_increment,
`aktiv` set('ja','nein') NOT NULL default '',
`banner` varchar(255) NOT NULL default '',
`link` varchar(255) NOT NULL default '',
`angezeigt` int(10) unsigned NOT NULL default '0',
`geklickt` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`lfd`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Und tragen unsere vorhandenen Bannercodes hier mit phpMyAdmin wie folgt ein:

`lfd` wird von MySql automatisch bei jedem neuen Eintrag immer um 1 erhöht. Hier muss nichts eingefügt werden.

Bei `aktiv` schalten wir die Banner, die angezeigt werden sollen auf 'ja'. Wenn wir einen Banner ausschließen bzw. deaktivieren möchten, dann stellen wir das Feld um auf 'nein'.

In das Feld `banner` kommt nur der Code zur Anzeige des Banners. In unserem Beispiel ist das:

Quelltext: PHP
1
'http://abc.com/banner.jpg' width='468' height='60' border='0' (erstes Hochkomma nicht vergessen)

Anmerkung: Falls unsere Datenfelder durch Usereingaben gefüllt würden, so würden wir den Code mit

mysql_real_escape_string() entschärfen. Da wir hier aber alle Eingaben selbst machen, lassen wir alles original stehen.

In das Feld `link` tragen wir nur den Link-Teil des Bannercodes ein:

Quelltext: PHP
1
http://abc.com?code=xyz

Die Felder `angezeigt` und `geklickt` sollen später zählen, wie oft der Banner auf unseren Seiten angezeigt wurde, und wie oft Besucher auf ihn geklickt haben. Unsere Werbepartner stellen uns ähnliche Auswertungen ja auch zur Verfügung.

Unsere Zahlen werden von den fremden Statistiken abweichen; die Unterschiede sollten aber nur gering sein.

Wenn unser geplantes Script den Bannercode aus der Datenbank holt, dann kann es zugleich den Zähler `angezeigt` hochzählen. Dieser Teil unserer Statistik bereitet also kein Problem. Wenn ein Besucher aber auf den Original-Link

Quelltext: PHP
1
http://abc.com?code=xyz

klickt, dann ist er von unserer Seite verschwunden und es gibt nichts zu zählen. Wir müssen den Link also auf ein Zählscript umleiten, den Klick zählen, und den Besucher dann zur Zielseite weiterleiten.

Wir nennen dies Zählscript "klick.php" und steuern es an mit dem Parameter nr. Der Aufruf für die Tabellenzeile mit lfd = 1 lautet dann also: klick.php?nr=1

Quelltext: PHP
1

<?php
// klick.php

// Zu MySql verbinden
include "connect.php"

// Übergebenen Parameter prüfen
$fehler true;
if(!empty(
$_GET['nr'])) {
$lfd $_GET[nr];
if(
is_numeric($lfdAND $lfd>0$fehler false
}

// Fehler festgestellt
if($fehlerdie("Falscher Programmaufruf");

// Link ermitteln
$sql "SELECT link FROM werb WHERE lfd '$lfd'";
$erg=mysql_query($sql);

// Was gefunden?
if(!mysql_num_rows($erg)) {
die(
"Falscher Programmaufruf");


$row=mysql_fetch_array($erg,MYSQL_ASSOC);
$link $row['link'];

// Zählen
$upd "UPDATE werb SET geklickt geklickt WHERE lfd '$lfd'";
mysql_query($updor die(mysql_error());

// Und tschüss

header("Location:$link");
?>

Wir können das Script durch Direktaufruf mit einer existierenden Zeilennummer testen und können uns nun an das Script machen, das einen Banner auswählt und anzeigt.

Wir speichern dies unter dem Namen "banner_anzeigen.php".

Quelltext: PHP
1

<?php
// banner_anzeigen.php
// Verbindung zur Datenbank muss schon hergestellt sein

// Zufälligen Banner auswählen
$sql "SELECT lfd,banner FROM werb ORDER BY rand() LIMIT 1";
$erg=mysql_query($sql);
$row=mysql_fetch_array($erg,MYSQL_ASSOC);
$lfd $row['lfd'];
$banner $row['banner'];

// Zählen
$upd "UPDATE werb SET angezeigt angezeigt WHERE lfd '$lfd'";
mysql_query($updor die(mysql_error());

// Bannercode ausgeben
$bannercode "<a href='klick.php?nr=$lfd'><img src=$banner ></a>";
echo 
$bannercode;
?>



(Quelle: Wolfgang ), Eingetragen am 20.June.2008



Ähnliche News

27.08.2008 - [Code] Zaehlen, wie häufig ein Wort in einem ...
27.08.2008 - [code] Passwörter mit md5 verschlüsselt ...
26.08.2008 - [Code] Banner ausliefern mit PHP (fpassthru)
26.08.2008 - [Code] Banner ausliefern und pro Linkpartner z&aum...
29.07.2008 - [Tipp] 404-Fehler mit .htaccess abfangen

Letzten Webmaster News

18.12.2009 - Neues Update für die PHP 5.2.x Reihe Online
23.11.2009 - Neue PHP-Version 5.3.1 verfügbar
19.11.2009 - Empfehlenswerte Artikel - Sicherheitslücken W...
18.11.2009 - Wir suchen einen oder mehre Gastautoren
10.11.2009 - Interessante Artikel zum Trinitäts-Operator, ...





 
 
Webhosting Service | Board Features