Loading...   Upload Image

Affiliates ManagerTutorials » PHP/MySQL Tutorials » Affiliates Manager

Verfasst von Alice am 21.03.2007 - wurde schon 10582 mal gelesen

Kategorie: PHP/MySQL
Bewertung:
20x bewertet
Schwierigkeit: mittel
Kommentare: [ 44 ]

Tag - Schlagwort PHP Tag - Schlagwort Affiliate Tag - Schlagwort Manager Tag - Schlagwort Script

Affiliates Manager - Tutorial

In diesem Tutorial moechte ich euch zeigen wie ihr eure Affiliates, mit einer MySql Datenbank, ganz easy verwalten koennt.

Hinweis


Es existiert eine neuere Version dieses Tutorials, zu finden unter Affiliate Manager ...


Was wird benoetigt?


- Webspace der PHP unterstuetzt
- eine MySql Datenbank / PHPMyAdmin
- Php/MySQL Basiskenntnise

Step 1 - MySQL Tabelle


Wir erzeugen eine neue Tabelle in PHPMyAdmin
CREATE TABLE `affis` (
`id` int(5) NOT NULL auto_increment,
`name` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`url` varchar(255) NOT NULL default '',
`button` varchar(255) NOT NULL default '',
`view` int(5) NOT NULL default '0',
PRIMARY KEY (`id`)
);


Step 2 - affis.php


Die Ausgabeseite affis.php, listet uns alle vorhandenen Affiliates, sowie deren Aufrufe, auf...
All Affiliate"; // headline ausgeben

// --------------------------------- Datenbankverbindung --- //
$host = "localhost"; // Adresse des Datenbankservers, fast immer localhost
$user = ""; // Ihr MySQL Benutzername
$pass = ""; // Ihr MySQL Passwort
$dbase = ""; // Name der Datenbank

$connection = mysql_connect("$host" , "$user" , "$pass") OR DIE ("Keine Verbindung zu der Datenbank moeglich.");
$db = mysql_select_db($dbase , $connection) or die ("Auswahl der Datenbank nicht moeglich.");
// ----------------------------------------------- //

// DB Abfragen
$abfrage = mysql_query("SELECT id,name,view,button FROM affis");

// Daten ausgeben
while($row = mysql_fetch_object($abfrage)){
?>
<?php echo $row->name; ?> name; ?>
Visits: view; ?>

Zu oberst haben wir die Daten, welche fuer den Verbindungsaufbau zur Datenbank von noeten sind.
Mittels $abfrage = mysql_query("SELECT id,name,view,button FROM affis"); rufen wir die Daten aus unserer Datenbank ab und geben diese dann anschliessend in einer While-Schleife aus.

Step 3 - go.php


Nun brauchen wir die Seite, welche den Klick zaehlt und den Besucher auf die URL des Affiliates weiterleitet.
url"); // Weiterleitung
   	}	
?>

Hier haben wir dann auch wieder die Daten, die zur Datenbankverbindung, benoetigt werden.
Kann man natuerlich auch schoener loesen, indem man die Daten auf ne Extra Seite packt und dann diese einfach nur per include einbindet.
Wir rufen uns die Daten mit der id, die wir per $_GET['id'] uebergeben bekommen haben, ab,
setzen dann den Wert view + 1 und leiten dann den Besucher auf die entsprechende Seite weiter.

Step 4 - admin.php


Eigentlich wuerde das ja jetzt schon ausreichen, wir haben die Ausgabe der Daten und die Zaehlung der Klicks,
die Daten der Affiliates koennten auch per Hand in die Datenbank eingetragen werden, aber dann waer es ja nicht easy, sondern umstaendlich.

Kommen wir also nun zum 'Adminpanel' - admin.php
Wir brauchen erstmal eine Uebersicht aller Affiliates, von wo aus man die Affiliates verwalten kann ...

Affis verwalten

"; } else { echo ""; } ?>
ID Name Website Klicks Bearbeiten
id; ?> name; ?> url; ?> view; ?> Delete | Edit

Neuen Affiliate anlegen

Auch hier bauen wir zu erst einmal wieder die Verbindung zur Datenbank auf, rufen dann die Daten ab und geben sie dann in einer Tabelle aus.

Damit es uebersichtlicher gehalten ist, erhaelt jede 2te Tabellenreihe einen beigen Hintergrund.
Damit die Affiliates an Ort und Stelle bearbeitet werden koennen, bekommt jeder 2 Links, einer um die Daten zu editieren und der andere um den Eintrag zu loeschen.
Und ganz zu letzt findet sich ein Verweis auf die Seite zum Erstellen eines neuen Affiliates...

Step 5


Kommen wir nun zur Seite die fuer einen Neueintraeg, die Loeschung und die Editierung eines Affiliates dient.

Man haette auch alles einzel auf je eine Seite verteilen koenne, ich halte von vielen Dateien recht wenig, warum viel wenn es auch wenig geht?
Damit wir nur eine Datei haben verwenden wir eine Switch-Abfrage.
name;
      $email = $row->email;
      $website = $row->url;
      $button = $row->button;

} // if $_GET 'id'

// ---------------------------------------------- //

if (isset($_POST['submit'])) {

$name = mysql_real_escape_string($_POST['name']);		// Variable definieren
$email = mysql_real_escape_string($_POST['email']);		// Variable definieren
$website = mysql_real_escape_string($_POST['url']);		// Variable definieren
$button = mysql_real_escape_string($_POST['button']);	// Variable definieren

// ------------------------------- Wenn action = new

if ($action == "new") {  

// Check alle Felder ausgefuellt 
    if ($name == '' || $button == '' || $website == ''){
        echo '

Du musst alle Felder ausfuellen !

'; }else { $eintragen = mysql_query("INSERT INTO affis (name, email, button, url) VALUES ('$name','$email','$button','$website')"); if($eintragen){ // Sofern eintrag erfolgreich war echo "

Prima ...

\n"; echo "

Vielen Dank ...

\n"; echo "Der Eintrag war erfolgreich :)

\n"; echo "Adminpanel

"; }else{ // Wenn nicht Fehler ausgeben echo '

Der Eintrag war nicht erfolgreich '.mysql_error().'

'; } } // close Check alle Felder ausgefuellt } // close action new // ------------------------------- Wenn action = edit if ($action == "edit") { // Check alle Felder ausgefuellt if ($name == '' || $button == '' || $website == '') { echo '

Bitte Danke alle Felder ausfuellen ...

'; }else { // Neue Daten in DB schreiben $update = mysql_query("UPDATE affis SET name='$name', email='$email', url='$website', button='$button' WHERE id='$id'"); if($update){ // Sofern Update erfolgreich war echo "

Prima ...

\n"; echo "

Das Update war erfolgreich ...

\n"; echo "Adminpanel

"; }else{ // Wenn nicht Fehler ausgeben echo "

Error ...

\n"; echo '

Fehler beim Aktualisieren der Details: '.mysql_error().'

'; } } // close Check alle Felder ausgefuellt } // close action edit }else{// ------------------------------- Wenn action = loeschen if ($action == "loeschen") { $mode = mysql_real_escape_string($_GET['mode']); if(isset($_GET['mode'])){ // Affiliate aus DB loeschen $delete = mysql_query("DELETE from affis where id='$id'"); if ($delete) { echo "

Prima ...

\n"; echo "

Der Affi wurde erfolgreich geloescht ...

\n"; echo "Adminpanel

"; } }else{ // Zur Sicherheit noch mal nachfragen echo "

Ganz sicher loeschen?

\n"; echo "Ja"; echo "  Nein"; } }// close if ($action == "loeschen") //------------------------------------- close wenn Abschicken geklickt if(($action == "edit")OR($action == "new")){ if(isset($_GET['id'])) { echo "

Edit Affiliate

"; // Headline definieren $form = "new_affi.php?action=edit&id=$id"; // URL => Formular }else{ echo "

New Affiliate

"; // Headline definieren $form = "new_affi.php?action=new"; // URL => Formular } ?>


" style="width: 250px" />
" style="width: 250px" />


Als erstes, wie schon zuvor gehabt, stellen wir die Verbindung zur Datenbank her, dann rufen wir wenn per Get-Variable eine ID mitgeteiltwurde die Daten ab,
da wir die Daten eines Affiliates ja brauchen um diese zu Bearbeiten.

Sollte in der URL keine ID uebermittelt worden sein, dann prueft die naechste IF-Abfrage ob der Absende-Button gedrueckt worden ist,
sollte das der Fall sein, so kommt die Switch-Abfrage an die Reihe, diese prueft ob $action = new ist oder $action = edit.

Dann kommt der Else Teil der Abfrage, ob der Absende-Button gedrueckt wurde oder nicht und schliesslich kommt der letzte Teil unserer Switch-Abfrage ob $action=loeschen ist zum Zug.

Nun kommt schon wieder eine If-Abfrage, diese prueft ob $action = new oder $action = edit, sollte dies der Fall sein wird das Formular zum Eintragen der Angezeigt.

Das waer es dann mal im Grossen und Ganzen, wir haben nun 4 Dateien


affi.php - Listet alle Affiliates
go.php - erhoeht den Klick und leitet den Besucher weiter
admin.php - Listet alle Affiliates zur Bearbeitung
new_affi.php - Dient der Bearbeitung, Neuanlegung und Loeschung eines Affiliates

Wichtig


Damit nicht jeder beliebig Affiliates anlegen und loeschen kann, waere es sinnvoll die admin.php und die new_affi.php per htaccess zu geschuetzen.


Sollte etwas unklar sein, fragen kostet nix ;)

Tutorialdateien herunterladen

Affiliates Manager Part 2

Affiliates Manager Part 3

Das Tutorial wurde am 03.09.2009 ueberarbeitet ...

Kommentar schreibenHinterlasse einen Kommentar

Du musst angemeldet sein, um einen Kommentar zu hinterlassen...

Du bist noch kein Mitglied von Alice-Grafixx.de?
Dann kannst du dich hier kostenlos registrieren ...


Affiliates:   Design Grafixx  •   Chibi Graphics  •   The Seduction  •   Gallery Yuri  •   Pat DG  •   Colorful Gfx  •   Blue-Graphics  • Show all ...
designenlassen.de - Der Design-Marktplatz für Webdesign, Logo-Design, Flyerdesign u.v.m.        ALL-INKL.COM - Webhosting Server Hosting Domain Provider