Loading...   Upload Image

Affiliates Manager Teil 3 - PasswortschutzTutorials » PHP/MySQL Tutorials » Affiliates Manager Teil 3 - Passwortschutz

Verfasst von Alice am 01.08.2008 - wurde schon 6328 mal gelesen

Kategorie: PHP/MySQL
Bewertung:
7x bewertet
Schwierigkeit: einfach
Kommentare: [ 2 ]

Tag - Schlagwort Affiliate Tag - Schlagwort Links Tag - Schlagwort Passwort Tag - Schlagwort Manager

Affiliates Manager Teil 3 - Passwortschutz - Tutorial

Da ich nun schon oefter gefragt urde, wie genau man denn nun das Adminpanel des Affiliates Manager mit einem Passwort versehen kann, hier also nun die Erklaerung dazu ...

Was wird benoetigt?


- Webspace der PHP unterstuetzt
- eine MySql Datenbank / PHPMyAdmin
- Php/MySQL Grundkenntnise
- Affiliates Manager Script

Step 1


Fangen wir mit dem Login an, dazu nehmen wir uns das Tutorial - Einfacher Passwortschutz zur Hilfe ...
Aendern dies um, so dass auch noch ein Benutzername eingegeben werden muss, fuer mehr Sicherheit ...
Was dann wie folgt aus schaut:
<?php
session_start();

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

	$benutzer = "USERNAMEN";    // Hier bitte gewuenschten Benutzernamen angeben
	$passwort = "PASSWORT";     // Hier bitte gewuenschtes Passwort angeben

    $check_user = strip_tags($_POST["username"]); 	
    $check_pass = strip_tags($_POST["password"]); 

    if ($check_user == "$benutzer" AND $check_pass == "$passwort"){
        $_SESSION["access"] = "okay";  // wenn Username & Passwort korrekt waren Session setzen
    }else{
        echo "Zugriff verweigert...";
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Passwortschutz mit PHP</title>

</head>

<body>
<?php 

if ($_SESSION["access"] == "okay") {  // ueberpruefen ob Session vorhanden

// Geschuetzter Bereich ...
?> 

<!-- Hier muss das hin was geschuetzt werden soll! -->

Ich bin ein passwortgeschuetzter Text und du nicht! 

<!-- Hier endet der geschuetzte Bereich! -->

<? }else{ // wenn keine Session vorhanden Login anzeigen
?>
<!--- Loginformular start -->
<form method="POST" action="">
<fieldset>
<legend>Logindaten angeben ...</legend>
<label>Name</label>
<input type="text" name="username" size="16" />
<label>Passwort</label>
<input type="password" name="password" size="16" />
<input type="submit" value="Login" name="go"/>
</fieldset>
</form>
<!-- Loginformular ende -->
<?php } // close Loginform
?>
</body>
</html>

Wir haben dem Loginformular noch ein zusaetzliches Feld namens username verpasst und oben in der Abfrage if (isset($_POST['go'])) noch die Variable fuer den Usernamen definiert und die Abfrage entsprechen veraendert...

Wichtig!


Die Variable $benutzer = "USERNAMEN"; enthalt den Benutzernamen, dieser MUSS angepasst werden!
Die Variable $passwort = "PASSWORT"; enthalt das Passwort, dieses MUSS angepasst werden!


Step 2


Widmen wir uns nun der admin.php aus dem Affiliates Manager.
Den kompletten Code der admin.php fuegen wir nun in das obere Skript ein,
genau an der Stelle, wo derzeit noch steht Ich bin ein passwortgeschuetzter Text und du nicht!

Das Ganze sieht dann wie folgt aus:
<?php
session_start();

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

	$benutzer = "USERNAMEN";    // Hier bitte gewuenschten Benutzernamen angeben
	$passwort = "PASSWORT";     // Hier bitte gewuenschtes Passwort angeben

    $check_user = strip_tags($_POST["username"]); 	
    $check_pass = strip_tags($_POST["password"]); 

    if ($check_user == "$benutzer" AND $check_pass == "$passwort"){
        $_SESSION["access"] = "okay";  // wenn Username & Passwort korrekt waren Session setzen
    }else{
        echo "Zugriff verweigert...";
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Affiliates Manager | Adminpanel</title>

</head>

<body>
<?php 

if ($_SESSION["access"] == "okay") {  // ueberpruefen ob Session vorhanden


// Geschuetzter Bereich ...
?> 

<!-- Hier muss das hin was geschuetzt werden soll! -->

<h1>Affis verwalten</h1>

<table width="600" cellpadding="3" class="tab">
<tr> 
<th width="15">ID</th>
<th>Name</th>
<th width="200">Website</th>
<th width="55">Klicks</th>
<th width="95">Bearbeiten</th>
</tr>
<?php 
// --------------------------------- 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."); 

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

$query = "SELECT id, name, url, view FROM affis ";
$result= mysql_query($query, $connection) or die
("Could not execute query : $query." . mysql_error());

while ($row=mysql_fetch_array($result)){
	$id=$row['id'];
	$name=$row['name'];
	$view=$row['view'];
	$url=$row['url'];
	
 $zeile++;  // jede 2te Zeile einfaerben
   if ($zeile % 2 == 0) {
       echo "<tr>";
   } else {
          echo "<tr bgcolor=\"#f5f5f5\">";
   }
?>
<td align="right"><?php echo "$id"; ?></td>
<td><?php echo "$name"; ?></td>
<td><?php echo "$url"; ?></td>
<td align="center"><?php echo "$view"; ?></td>

<td align="center">
<a href="<?php echo "new_affi.php?action=loeschen&amp;id=$id"; ?>">Delete</a> | 
<a href="<?php echo "new_affi.php?action=edit&amp;id=$id"; ?>">Edit</a>
</td>
</tr> 
<?php 
} // while
?>
</table><br />
<a href="new_affi.php?action=new">Neuen Affiliate anlegen</a>

<!-- Hier endet der geschuetzte Bereich! -->

<? }else{ // wenn keine Session vorhanden Login anzeigen
?>
<!--- Loginformular start -->
<form method="POST" action="">
<fieldset>
<legend>Logindaten angeben ...</legend>
<label>Name</label>
<input type="text" name="username" size="16" />
<label>Passwort</label>
<input type="password" name="password" size="16" />
<input type="submit" value="Login" name="go"/>
</fieldset>
</form>
<!-- Loginformular ende -->
<?php } // close Loginform
?>
</body>
</html>

Dies speichern wir uns nun als admin.php ab!

Step 3


Fehlt also noch die new_affi.php, aus dem Affiliates Manager,
welche fuer das Eintragen eines neuen Affiliate zustaendig ist, die muss natuerlich auch noch vor unbefugtem Zugriff geschuetz werden...

Wir erstellen uns zuerst eine Abfrage, die prueft ob die Session mit der Bezeichnung access NICHT existiert, das ist die Session, die beim erfolgreichen Login auf der admin.php gesetzt wird, sollte dies der Fall sein, so leiten wir auf die admin.php um ...

Das schaut wie folgt aus:
<?php
session_start(); // Startet die Session

if ($_SESSION["access"] != "okay") { // Pruefen ob Session NICHT vorhanden ist

	header ("Location: admin.php"); // weiterleiten auf admin.php
}
?>


Nun kommt noch ein ELSE-Zweig hinzu,
dieser beinhalten dann den kompletten Code der new_affi.php aus dem Affiliates Manager

<?php
session_start(); // Startet die Session

if ($_SESSION["access"] != "okay") { // Pruefen ob Session NICHT vorhanden ist

	header ("Location: admin.php"); // weiterleiten auf admin.php

}else{ // wenn Session vorhanden = User ist eingeloggt

// --------------------------------- 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."); 

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

$id = strip_tags($_GET['id']); 
$action = $_GET['action']; 

if(isset($_GET['id'])) {

	$q = "SELECT name,email,url,button FROM affis WHERE id='$id'";
	$results = mysql_query($q) or die ("Could not execute query : $q." . mysql_error()); 

	while ($row = mysql_fetch_array($results)){
  
  	$name = $row['name'];
  	$email = $row['email'];
  	$website = $row['url'];
  	$button = $row['button'];
 	
  	} // while
} // if $_GET 'id'

// ---------------------------------- / Config / ---------------------------------------//

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

$name = strip_tags($_POST['name']); 
$email = strip_tags($_POST['email']); 
$website = strip_tags($_POST['url']); 
$button = strip_tags($_POST['button']); 

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

if ($action == "new") {  

// Check if user submit blank entry
	if ($name == '' || $button == '' || $website == ''){ 
		die ('<p>Du musst alle Felder ausfuellen ! <a href="javascript:%20history.back()">&laquo; zurck</a></p>');
	}else {
		$q="insert into affis (id,name,email,button,url) VALUES ('','$name','$email','$button','$website')";
		$result = mysql_query($q,$connection);

	if ($result) {
		echo "<h1>Prima ...</h1> \n";
		echo "<p>Vielen Dank ...<br /><br /> \n";
		echo "Der Eintrag war erfolgreich :)<br /><br />\n";
    	echo "<a href=\"admin.php\">Adminpanel</a></p>";

	}else {
		echo '<p>Der Eintrag war nicht erfolgreich ' .
        mysql_error() . '</p>';
	}
  } // close Check alle Felder ausgefuellt
} // close  action new

// ------------------------------- Wenn action = edit ----------------------------
if ($action == "edit") {  

// Check if user submit blank entry
 if ($name == '' || $button == '' || $website == '') { 
    die ('<p>Bitte Danke alle Felder ausfuellen ... <a href="javascript:%20history.back()">&laquo; zurck</a></p>');
 }else {
 
  	$sql = "UPDATE affis SET	
  						name='$name',
  						email='$email',
  						url='$website',
  						button='$button'
   		WHERE id='$id'";
   		$results = mysql_query($sql,$connection);
 
  	if ($results) {
		echo "<h1>Prima ...</h1> \n";
  	  	echo "<p>Das Update war erfolgreich ...<br /><br />\n";
    	echo "<a href=\"admin.php\">Adminpanel</a></p>";
	  } else {
  		echo "<h1>Error ...</h1> \n";
   		echo '<p>Fehler beim Aktualisieren der Details: ' .
        mysql_error() . '</p>';
	  }
  
  } // close Check alle Felder ausgefuellt
} // close action edit
// ------------------------------- Wenn action = delete ----------------------------
}else {

if ($action == "loeschen") {
  
 $mode = $_GET['mode'];
   
   if(isset($_GET['mode'])){ 
	$q="DELETE from affis where id='$id'";
	$resulta = mysql_query($q) or die (mysql_error());
	
		if ($resulta) {
			echo "<h1>Prima ...</h1> \n";
    		echo "<p class=\"error\">Der Affi wurde erfolgreich geloescht ...<br /><br />\n";
    		echo "<a href=\"admin.php\">Adminpanel</a></p>";
		} 
	
	} else {
		echo "<p class=\"error\">Ganz sicher loeschen?</p> \n";
		echo "<a href=\"new_affi.php?action=loeschen&amp;mode=del&id=$id\">Ja</a>";
		echo "&nbsp;&nbsp;<a href=\"affis.php\">Nein</a>";
	}
	 
}// close if ($action == "loeschen")
   
//------------------------------------- close wenn Abschicken geklickt --------------------------------------

if(($action == "edit")OR($action == "new")){

	if(isset($_GET['id'])) { 
		echo "<h2>Edit Affiliate</h2>"; 
	}else{ 
		echo "<h2>New Affiliate</h2>";
	} 
?>
<form action="<?php if($action == "edit") { echo "new_affi.php?action=edit&amp;id=$id"; }
									  else { echo "new_affi.php?action=new"; } ?>" method="post">
<table border="0" width="450">
<tr>
<td>Name:</td>
<td>  
<input type="text" name="name" value="<?php if(isset($_GET['id'])) { echo "$name"; }?>" style="width: 250px" /></td>
</tr>
<tr>
<td>E-Mail:</td>
<td>  
<input type="text" name="email" value="<?php if(isset($_GET['id'])) { echo "$email"; }?>" style="width: 250px" /></td>
</tr>
<tr>
<td>Website:</td>
<td>  
<input type="text" name="url" value="<?php if(isset($_GET['id'])) { echo "$website"; }else{ echo "http://";} ?>" style="width: 250px" /></td>
</tr>
<tr>
<td>Button:</td>
<td>  
<input type="text" name="button" value="<?php if(isset($_GET['id'])) { echo "$button"; }else{ echo "http://";} ?>" style="width: 250px" /><br />
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" value="Abschicken" name="submit" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  
<input name="Reset" type="reset" value="Lschen" />
</td>
</tr>
</table>
</form> 
<?php } // close action

}//close else wenn submit 

} // Close User ist eingeloggt
?>

Das war es dann auch schon, nun sollten die 2 Dateien vor unbefugtem Zugriff geschuetzt sein, vorrausgesetzt man waehlt sichere Zugangsdaten ...

Tutorialdateien herunterladen

Affiliates Manager Part 1

Affiliates Manager Part 2

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 ...


       ALL-INKL.COM - Webhosting Server Hosting Domain Provider