Loading...   Upload Image

MessageboxTutorials » PHP/MySQL Tutorials » Messagebox

Verfasst von PascalErorr am 13.08.2009 - wurde schon 6193 mal gelesen

Kategorie: PHP/MySQL
Bewertung:
10x bewertet
Schwierigkeit: mittel
Kommentare: [ 0 ]

Tag - Schlagwort PHP Tag - Schlagwort Shoutbox Tag - Schlagwort Messagebox Tag - Schlagwort Kommentare Tag - Schlagwort Script

Messagebox - Tutorial

Halli Hallo .. Das is nun mein erstes Tutorial hier ..
Naja, meins ist ein wenig weit aus dem Keller geholt :D Da Alice ein wenig viel Beschäftigt ist, hat sie mich gefragt, ob ich das mal eben veröffenltichen kann.
Also es handelt sich um eine kleine Messagebox, die ganz ohne SQL Datenbank auskommt, der Code ist Auskommentiert und erklärt sich eigentlich fast von selbst.

Wie schauts aus?


- Messagebox

- Admin Login
- Admin Ansicht
- Admin Editieren
- Admin Loeschen

Step 1 - index.php


Zuerst brauchen wir die Datei zum Eintragen, die gleichfalls die schon geschriebenen Messages ausgibt, dazu legt ihr die Datei index.php, welche mit folgenden Code bestueckt wird:
<!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" xml:lang="de"> 

<head>
<title>Grafixx - Messagebox</title> 

<meta http-equiv="Content-Language" content="de" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="imagetoolbar" content="no" />

<link rel="stylesheet" type="text/css" href="stysle.css" />

<style type="text/css">
form{
	margin: 0px; 
	color: #777;
	font: normal 12px Arial, Verdana, sans-serif;
}

fieldset{
	width: 500px;
	margin: 0px auto;
	border: 1px solid #B5B5B5;
	padding: 8px;
	color: #666666;
}

legend{
	font-size: 1.4em;
	color: #5C85BB;
}

/* Messages
--------------------------------------- */

#messages{			
	float: left; 
	overflow: auto; 
	width: 325px; 
	height: 147px; 
	border: 1px solid #B5B5B5;
	padding: 2px 4px; 
	margin: 2px 12px 0px 0px;
}

	* html #messages{
		height: 154px;
		margin: 8px 7px 0px 0px;
	}

/* Inputfelder - Bereich rechts
--------------------------------------- */

#right{
	margin-left: 328px;
}

	* html #right{
		margin: 5px 0px 0px 328px;
	}
	
#error{
	height: 23px;
	color: #E6584D;
}	

input {
	color: #79B460; 
	background: #F4F4F4;
	border: 1px solid #B5B5B5;
	font-size: 0.9em;
	height: 18px; 
	margin: 2px 0px 3px 0px;
}

input:hover, input:active, input:focus{
	border: 1px solid #79B460;
	color: #5C85BB;
}

	.button{
		padding: 3px 12px;
		height: 22px;
		width: 152px;
	}

	.eingabe{
		width: 150px;
	}
	
/* Links - Verweise
--------------------------------------- */

A {
	color: #79B460; 
	font-weight: bold;
	text-decoration: none;
}

A:visited {
	color: #5C85BB; 
	font-weight: bold;
	text-decoration: none;
}

A:hover, A:active {
	color: #777; 
	font-weight: bold;
	text-decoration: none;
}

</style>
</head>
<body>

<?php // ---------------------------------- CONFIG ------------------------------------ //

$pfad = $_SERVER['PHP_SELF'];                // aktueller Pfad zur Datei 
$db_file = "messages.txt"; 					 // Pfadangabe zur messages.txt
$messages_per_page = 5;						 // Anzahl der Eintraege, die angezeigt werden sollen


$read_dbfile = file($db_file);				 // Daten auslesen => Array packen
$total_records = count($read_dbfile);		 // Anzahl der Zeilen in Datei ermitteln

if($total_records == ""){ $total_records = 0; }	// wenn count == 0


//------------------------ Funktion um die letze ID zu ermitteln ------------------

function last_id(){	
 $array = file('messages.txt');			// Message.txt in ein Array einlesen
 $count = sizeof($array)-1;				// Anzahl der Elemente ermitteln - 1 fuers Array
 $teile = explode("|", $array[$count]); // Array zerlegen
 return $teile[0];				 		// zuletzt eingetragene ID ermitteln 
}  

$next_id = last_id() + 1;				// naechste ID ermitteln

// ------------------------------------------------------------------------------------------ //
?>
<form action="" method="post">
<fieldset>
<legend>Messagebox</legend>

<div id="messages">
<?php 

if($total_records == ''){ // Falls keine Eintraege vorhanden 
    	echo "<p>Noch keine Eintraege vorhanden ...</p>\n"; // 'Fehler' ausgeben
} else {

// ----------------------------- Eintraege ausgeben ---------------------------------------------------

	if(isset($_GET['archiv'])){ // Alle Eintraege anzeigen
	
		for ($do_zeile = $total_records-1; $do_zeile > 0-1; $do_zeile--){  	// Zeilen auslesen
		
			$eintraege = explode ("|", $read_dbfile[$do_zeile]); 				// Eintraege auseinander nehmen
		
				echo "<b><a href=\"".$eintraege[2]."\"> ".$eintraege[1]."</a>: </b>";
				echo $eintraege[3];
				echo "<br />";
		} // close for
	
	}else{ // Standard Ausgabe der Eintraege
	
		$show = $messages_per_page; 						// Variable definieren
		
		if ($messages_per_page > $total_records){ 			// Wenn auszulesende Zeilen > als alle vorhandenen Zeilen
			$show = $total_records; 						// Variable definieren							
		}
	
		$start = $total_records - $show -1;					// Anzahl der auszulesenden Zeilen ermitteln
	
		for ($do_zeile = $total_records-1; $do_zeile > $start; $do_zeile--){  	// Zeilen auslesen
	
			$eintraege = explode ("|", $read_dbfile[$do_zeile]); 				// Eintraege auseinander nehmen
		
			echo "<b><a href=\"".$eintraege[2]."\"> ".$eintraege[1]."</a>: </b>"; // Namen ausgeben
			echo $eintraege[3];	// Message ausgeben
			echo "<br />";
				
		} // close for-schleife
	
	} // close else archiv
		
} // close eintraege vorhanden
?>
</div>

<div id="right">
<?php 
// ----------------------------------- Message in File schreiben -----------------------------------------

if (isset($_POST['submit'])){ // Wenn submit gedrueckt

$name = strip_tags($_POST['who']); 	// Variable definieren
$url = strip_tags($_POST['url']); 	// Variable definieren
$text = strip_tags($_POST['text']); // Variable definieren
$math = strip_tags($_POST['math']); // Variable definieren
$ip = $_SERVER['REMOTE_ADDR'];		// Variable definieren

$suchen = strpos($url, 'http://'); // $url pruefen auf http://

$n_text = wordwrap($text, 45, "-<br />", true); // Zeilenumbruch erzwingen nach 45 Zeichen
      
    if(empty($name)){ // Fehler wenn keine URL angegeben wurde
    	$message .= "Namen angeben!\n";  $error = "1";
    }
    
    if(empty($text)){ // Fehler wenn keine URL angegeben wurde
    	$message .= "Nachricht eingeben!\n";  $error = "1";
    }
    
    if(empty($math)){ // Fehler wenn keine Antispam angegeben wurde
    	$message .= "Rechenaufgabe loesen!\n";  $error = "1";
    }else{    
    
   		if($math != 7){ // Fehler wenn keine Antispam angegeben wurde
    		$message .= "Rechenaufgabe fehlerhaft!\n";  $error = "1";
   		}    
    }// close else math
    
    if($error != "1"){ // Wenn kein Fehler war
    	
		$datei = fopen($db_file, "a");					// Datei oeffnen
		fputs($datei, $next_id . "|" . $name . "|" . $url . "|" . $n_text . "|" . $ip ." \n"); // Daten eintragen
		fclose($datei);									// Datei schliessen

   	    $okay = 1;
   	     
		echo '<script type="text/javascript">window.location.href="'.$pfad.'";</script>'; // Weiterleitung => Refresh
	}
	
} // close submit

// ----------------------------- Formular zu Eintragen ---------------------------------------------    
?>
<input type="text" name="who" value="Dein Name" onfocus="value = ''" onblur="if (value == '') {value = 'Dein Name'}" class="eingabe" /><br />

<input type="text" name="url" value="http://" onfocus="value = ''" onblur="if (value == '') {value = 'http://'}" class="eingabe" /><br />

<input type="text" name="text" value="Nachricht" onfocus="value = ''" onblur="if (value == '') {value = 'Nachricht'}" class="eingabe" /><br />
<label>Anti-Spam: 4 + 3 =</label>
<input type="text" name="math" value="" style="width: 46px" />

<div id="error">
<?php 	if($error == "1"){ // Fehler falls vorhanden ausgeben
		echo "<b>$message</b>";
	}
?>	
</div>

<input type="submit" value=" Absenden " name="submit" class="button"/>
</div>
<div>
<a href="http://alice-grafixx.de" title="Alice-Grafixx | Photoshop Community">
Grafixx - Messagebox </a> | <a href="<?= $pfad; ?>?archiv=go" title="Alle Messages anzeigen">
Archiv</a>
</div>
</fieldset>
</form>

</body>
</html>


Step 2 - admin.php


Dann hätten wir da noch die Datei admin.php, mit welcher der Admin Einträge Löschen und Bearbeiten kann an:
<?php // admin.php

session_start(); // startet die Session 

$pfad = $_SERVER['PHP_SELF'];				// aktueller Pfad zur Datei

//---------------------- Logindaten --------------------------------- //

$grafixx_name = "USERNAME";					// Loginname angeben
$grafixx_pass = "PASSWORT";					// Loginpasswort angeben

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

ob_start();	// startet den Ausgabepuffer

?>
<!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" xml:lang="de"> 

<head>
<title>Grafixx - Messagebox || Adminpanel </title> 

<meta http-equiv="Content-Language" content="de" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="imagetoolbar" content="no" />

<link rel="stylesheet" type="text/css" href="style.css" />

</head>
<body>

<div id="ram">
<h1 id="header">Grafixx <small>Messagebox-Administration</small></h1>
<br />
<?php 

if(!isset($_SESSION['login'])) { // wenn keine Session vorhanden

	if(isset($_POST['admin_login'])) { // wenn supbit gedrueckt

		$login_name = strip_tags($_POST['admin_name']); // Variable definieren
		$login_pass = strip_tags($_POST['admin_pass']); // Variable definieren

	    if(empty($login_name)) { // Pruefen ob Username angegeben wurde
	    	$message .= 'Bitte geben Sie ihren Usernamen ein ... <br />'; $error = "1";
	 	} 	

	 	if(empty($login_pass)) { // Pruefen ob Passwort angegeben wurde
	    	$message .= 'Bitte geben Sie ihr Passwort ein ... <br />'; $error = "1";
	 	} 	
 	
	 	if($login_name != $grafixx_name OR $login_pass != $grafixx_pass){  // Angaben auf Korrektheit pruefen
	    	$message .= 'Zugriff verweigert ... <br />'; $error = "1";
	 	}
	
		if($error != "1"){ // Wenn kein Fehler war
        
			// session handle-----------------------------
			$_SESSION['login'] = $_SERVER['REMOTE_ADDR']; // Session setzen

			header("Location: $pfad"); // Weiterleiten
		}
	
		if($error == "1"){  // Fehlermeldung ausgeben wenn vorhanden
			echo "<h1>Error ...</h1>\n <p>$message</p>";
		}

	}
} // close isset Session login
// ----------------------------------------------- Ende Login ------------------------------------- //

if(isset($_SESSION['login'])){ 				// Sofern Session vorhanden ...

$db_file = "messages.txt"; 					// Pfadangabe zur messages.txt
$read_dbfile = file($db_file);				// Daten auslesen => Array packen

$ermittel_id = count($read_dbfile);			// Anzahl der Zeilen in datei ermitteln

if($ermittel_id == ""){ $ermittel_id = 0; }	// wenn count == 0

$messages_per_page = 5;						// Anzahl der Eintraege die Pro Seite angezeigt werden sollen
$p = 5;										// Anzahl der Links die in der Seitennavigation angezeigt wird


//------------------------ Funktion um die letze ID zu ermitteln ------------------

function last_id(){	
 $array = file('messages.txt'); 		// Datei in ein Array einlesen
 
 $count = sizeof($array)-1;				// Anzahl der Elemente ermitteln - 1 fuers Array
 
 $teile = explode("|", $array[$count]); // Array zerlegen
  
 return $teile[0];				 		// zuletzt eingetragene ID ermitteln 
}  

$next_id = last_id() + 1;				// naechste ID ermitteln
// ---------------------------------------------------------------------------------------------------- //

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

if(isset($_GET['id'])){ 				// falls ID uebregeben wurde 

	$datei = fopen($db_file, "r"); 		// Daten auslesen
	
		while($zeile = fgetcsv($datei, 1000, "|")){ // Daten werden aus der Datei
                                                    // in ein Array $zeile gelesen
	  		if($zeile[0] == $id){
				$name = $zeile[1];  				// Variable definieren
				$url = $zeile[2];					// Variable definieren
				$text = $zeile[3];					// Variable definieren
				$ip = $zeile[4];					// Variable definieren

	    	}
	    }// close while
	fclose($datei);									// Datei schliessen
}

if($action == ''){ // Wenn Variable $action nicht uebergeben / leer
?>

<h1>Uebersicht ...</h1>

<?php 

$total_records = count($read_dbfile);	 // Anzahl der Zeilen in Datei ermitteln

if($total_records == '') {				// Falls keine Daten vorhanden 
    	echo "<p>Zur Zeit sind keine Eintraege vorhanden ...</p>\n"; // 'Fehler' ausgeben
} else {

// -------------------------------------------------------- Seitennavigation ------------------------- //

$pages = ceil($total_records / $messages_per_page); 	// ermittelt die Anzahl der Seiten insgesammt

// korrigieren der aktuellen Seite
if(empty($_GET['go'])) {
    $go = 1;
} elseif($_GET['go'] <= 0 || $_GET['go'] > $pages) {
    $go = 1;
} else {
    $go = $_GET['go'];
}

$links = array();	// Linkkette bilden
 
if ($go > 1) { // weiterblaettern
    $i= $go-1;
    	$links[] = "<a href=\"".$pfad."?go=".$i."\">&laquo;</a>";
}
for($i=1; $i<=$pages; $i++) {
    if ($i==$go) {
        $links[] = "<span class=\"current\">[".$i."]</span>";
    }
    else {
    	$links[] = "<a href=\"".$pfad."?go=".$i."\">$i</a>";
    }
}
if ($go < $pages) { // zurueckblaettern
    $i=$go+1;
    	$links[] = "<a href=\"".$pfad."?go=".$i."\">&raquo;</a>";
}  

// Zusammenfügen der einzelnen Links zu einem String
$link_string = implode(" &nbsp; ", $links);
 
// --------------------------------------------------------------------------------------------------------------------- //

	$start = $go * $messages_per_page; 			// AusleseStart ermitteln
	$ende = $start - $messages_per_page;		// AusleseEnde ermitteln
	
if ($start > $total_records){ 
	$start = $total_records;
}
	$start = $total_records - $start-1;
	$ende = $total_records - $ende-1;
?>	
<table width="500" style="border: 1px solid #B5B8BB;">
<?php
for ($do_zeile = $ende; $do_zeile > $start ; $do_zeile--){
	$eintraege = explode ("|", $read_dbfile[$do_zeile]); 	// Eintraege auseinander nehmen
?>
<tr bgcolor="#E6E9EC">
<td>ID: <?php echo $eintraege[0]; ?> | von <a href="<?php echo $eintraege[2]; ?>"><?php echo $eintraege[1]; ?></a> 
| IP: <?php echo $eintraege[4]; ?></td>
<td width="95" align="center">
<a href="<?php echo $pfad; ?>?action=edit&amp;id=<?php echo $eintraege[0]; ?>"> 
Edit </a>&nbsp; |&nbsp;&nbsp;
<a href="<?php echo $pfad; ?>?action=delete&amp;id=<?php echo $eintraege[0]; ?>"> 
Delete </a>
</td>
</tr>

<tr>
<td colspan="2"><?php echo $eintraege[3]; ?></td>
</tr>
<?php
	} // close for-schleife
?>
</table>
<br />
<?php
 echo "<div id=\"navigation\">\n";

 echo "<span class=\"pages\">Seite $go von $pages</span>\n";

 echo $link_string; // Ausgabe der Seitennavigation
 
 echo "</div>\n"; 

 } // close urls vorhanden
 
} // close action leer

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

if (isset($_POST['submit'])){ // Wenn submit gedrueckt

$name = strip_tags($_POST['who']); 	// Variable definieren
$url = strip_tags($_POST['url']); 	// Variable definieren
$text = strip_tags($_POST['text']); // Variable definieren
$ip = strip_tags($_POST['ip']); // Variable definieren

$n_text = wordwrap($text, 45, "-<br />", true);

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

    if(empty($name)){ // Fehler wenn keine URL angegeben wurde
    	$message .= "Keinen Namen angeben!\n";  $error = "1";
    }
    
    if(empty($text)){ // Fehler wenn keine URL angegeben wurde
    	$message .= "Keine Nachricht eingeben!\n";  $error = "1";
    }
    
    if($error != "1"){ // Wenn kein Fehler war


	$datei = fopen($db_file, "r"); 						// Datei oeffnen - lesen
	
	while($zeile = fgetcsv($datei, 1000, "|")){ 		// Daten werden aus der Datei
                                                		// in ein Array $zeile gelesen
	  if($zeile[0] == $id){	
	    $write[] = "$id|$name|$url|$n_text|$ip\n";		// neue Daten definieren
	  }else{
	    $write[] = "$zeile[0]|$zeile[1]|$zeile[2]|$zeile[3]|$zeile[4]\n";  // Daten definieren
	  }
	} //while

	fclose($datei);										// Datei schliessen


	$datei = fopen($db_file, "w"); 						// Datei oeffnen um zu schreiben
		$who = 0;
	while($write[$who] != ""){
		  fputs($datei, $write[$who]);					// In Datei schreiben
		  $who++;
		  $okay = 1;									// Variable definieren

	}
	fclose($datei);										// Datei schliessen
	
	if($okay == 1){

		echo "<script type=\"text/javascript\">window.location.href='".$pfad."';</script>";  // Weiterleitung => Uebersicht
		
    }else{ 												// Fehlermeldung ausgeben
    	echo "Es ist ein Fehler aufgetreten"; 
    }    
  }// close !$error
} // close action - edit

} // ------------------------------- Wenn action = delete --------------------------------------------------------

if ($action == "delete") { 
  
$mode = $_GET['mode'];
   
   if(isset($_GET['mode'])){						// Pruefen ob Variable uebergeben wurde
   
	$datei = fopen($db_file, "r");					// Datei oeffnen um zu lesen
	  while($zeile = fgetcsv($datei, 1000, "|")){   // Daten werden aus der Datei
                                                    // in ein Array $zeile gelesen
	    if($zeile[0] == $id){
	      continue;									// weiter geht's - Eintrag raus
	    }else{
	   	 $write[] = "$zeile[0]|$zeile[1]|$zeile[2]|$zeile[3]|$zeile[4]"; // Daten definieren
	    }
	  }
	fclose($datei);									// Datei schliessen

	$datei = fopen($db_file, "w");					// Datei oeffnen um zu schreiben
		$who = 0;
    while($write[$who] != ""){
  	  fputs($datei, "$write[$who]\n");				// In Datei schreiben
  	  $who++;
  	}
	fclose($datei);									// Datei schliessen

	echo "<script type=\"text/javascript\">window.location.href='".$pfad."';</script>"; // Weiterleitung => Uebersicht

    
    } else { // zur Sicherheit noch mal nachfragen ...
    
    	echo "<h1>Wirklich ...</h1>\n";
        echo "<p>Ganz sicher loeschen?<br /><br />\n";
        echo "<a href=\"$pad?action=delete&amp;mode=yes&id=$id\" class=\"button\">Ja, ganz sicher</a>";
        echo "&nbsp;&nbsp;<a href=\"$pfad\" class=\"button\">Nein, lieber doch nicht</a></p> ";
    }
    
}// close action - delete
   
//------------------------------------- close wenn Abschicken geklickt ------------------------------

if(($action == "edit" AND !$okay)){
    
// ----------------------------- Formular zu Eintragen ---------------------------------------------    
?>

<form action="" method="post">
<fieldset style="width: 400px">
<legend> Eintrag bearbeiten </legend>
<label>Name:</label>
<input type="text" name="who" value="<?php echo $name; ?>" style="width: 250px" /><br />
<label>URL:&nbsp;&nbsp;&nbsp; </label>

<input type="text" name="url" value="<?php echo $url; ?>" style="width: 250px" /><br />

<textarea name="text" rows="7" cols="63"><?php echo $text; ?></textarea>

<input type="hidden" name="ip" value="<?php echo $ip; ?>"/>

<input type="submit" value=" Speichern " name="submit" class="button" />
</fieldset>

</form>
<?php } // close action 

}else{ // --------------------------- wenn nicht eingeloggt - login formular anzeigen -----------------------
?>
<form action="" method="post">
<fieldset style="width: 300px">

<legend>Login</legend>

<label for="user">Username: </label>
<input type="text" name="admin_name" style="width: 250px" />

<label for="passwort">Passwort:&nbsp; </label>
<input type="password" name="admin_pass" style="width: 250px" />
<br /><br />
<input type="submit" value=" Login " name="admin_login" />
</fieldset>

</form>

<?php } // close login

ob_end_flush(); // leert/beendet den Ausgabepuffer
?>

<h3 id="footer">Grafixx - Messagebox © <a href="http://alice-grafixx.de">
Alice-Grafixx.de</a> <?php echo date('Y'); ?></h3>

</div>

</body>
</html>

Wichtig ...


Bei den Logindaten euren gewünschten Nick und Passwort eintragen!


Step 3 - archiv.php


Jetzt brauchen wir noch eine Datei für das Archiv, hierzu erstellen wir eine Datei mit der Bezeichnung archiv.php, die enthaelt dann folgenden Code:
<!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" xml:lang="de"> 

<head>
<title>Grafixx - Messagebox</title> 

<meta http-equiv="Content-Language" content="de" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="imagetoolbar" content="no" />

<link rel="stylesheet" type="text/css" href="stysle.css" />

<style type="text/css">
<!--

form{
	margin: 0px; 
	color: #777;
	font: normal 12px Arial, Verdana, sans-serif;
}

fieldset{
	margin: 0px auto;
	border: 1px solid #B5B5B5;
	padding: 8px;
	color: #666666;
}

legend{
	font-size: 1.4em;
	color: #5C85BB;
}

/* Messages
--------------------------------------- */

#messages{			
	float: left; 
	overflow: auto; 
	width: 325px; 
	height: 147px; 
	border: 1px solid #B5B5B5;
	padding: 2px 4px; 
	margin: 2px 12px 0px 0px;
}

	* html #messages{
		height: 154px;
		margin: 8px 7px 0px 0px;
	}

/* Inputfelder - Bereich rechts
--------------------------------------- */

#right{
	margin-left: 328px;
}

	* html #right{
		margin: 5px 0px 0px 328px;
	}
	
#error{
	height: 23px;
	color: #E6584D;
}	

.button{
	border: 1px solid #B5B8BB;
	padding: 3px 12px;
	height: 22px;
}

input {
	color: #79B460; 
	background: #F4F4F4;
	border: 1px solid #B5B5B5;
	font-size: 0.9em;
	height: 18px; 
	margin: 2px 0px 3px 0px;
}

input:hover, input:active, input:focus{
	border: 1px solid #79B460;
	color: #5C85BB;
}
	
/* Links - Verweise
--------------------------------------- */

A {
	color: #79B460; 
	font-weight: bold;
	text-decoration: none;
}

A:visited {
	color: #5C85BB; 
	font-weight: bold;
	text-decoration: none;
}

A:hover, A:active {
	color: #777; 
	font-weight: bold;
	text-decoration: none;
}

-->
</style>
</head>
<body>

<?php 

$pfad = $_SERVER['PHP_SELF'];                // aktueller Pfad zur Datei 

$db_file = "count.txt"; 					 // Pfadangabe zur messages.txt

$read_dbfile = file($db_file);				 // Daten auslesen => Array packen

$total_records = count($read_dbfile);		 // Anzahl der Zeilen in Datei ermitteln

if($total_records == ""){ $total_records = 0; }	// wenn count == 0

?>
<form action="" method="post">
<fieldset style="width: 500px">
<legend>Messagebox</legend>

<div id="messages">
<?php 

if($total_records == '') {									// Falls keine Eintraege vorhanden 
    	echo "<p>Noch keine Eintraege vorhanden ...</p>\n"; // 'Fehler' ausgeben
} else {

// ----------------------------- Eintraege ausgeben ---------------------------------------------------

for ($do_zeile = $total_records-1; $do_zeile > 0-1; $do_zeile--){  	// Zeilen auslesen

	$eintraege = explode ("|", $read_dbfile[$do_zeile]); 				// Eintraege auseinander nehmen

		echo "<b><a href=\"".$eintraege[2]."\"> ".$eintraege[1]."</a>: </b>";
		echo $eintraege[3];
		echo "<br />";
	}
} // close eintraege vorhanden
?>
</div>

<div id="right">
<?php 
// ---------------------------------- / Config / ---//

if (isset($_POST['submit'])){ // Wenn submit gedrueckt

$name = strip_tags($_POST['who']); 	// Variable definieren
$url = strip_tags($_POST['url']); 	// Variable definieren
$text = strip_tags($_POST['text']); // Variable definieren
$math = strip_tags($_POST['math']); // Variable definieren
$ip = $_SERVER['REMOTE_ADDR'];		// Variable definieren

$suchen = strpos($url, 'http://'); // $url pruefen auf http://

$n_text = wordwrap($text, 45, "-<br />", true);
      
    if(empty($name)){ // Fehler wenn keine URL angegeben wurde
    	$message .= "Namen angeben!\n";  $error = "1";
    }
    
    if(empty($text)){ // Fehler wenn keine URL angegeben wurde
    	$message .= "Nachricht eingeben!\n";  $error = "1";
    }
    
    if(empty($math)){ // Fehler wenn keine Antispam angegeben wurde
    	$message .= "Rechenaufgabe loesen!\n";  $error = "1";
    }else{    
    
   		if($math != 7){ // Fehler wenn keine Antispam angegeben wurde
    		$message .= "Rechenaufgabe war falsch!\n";  $error = "1";
   		}    
    }// close else math
    
    if($error != "1"){ // Wenn kein Fehler war
    	
		$datei = fopen($db_file, "a");					// Datei oeffnen
		fputs($datei, $next_id . "|" . $name . "|" . $url . "|" . $n_text . "|" . $ip ." \n"); // Daten eintragen
		fclose($datei);									// Datei schliessen

   	    $okay = 1;
   	     
		echo '<script type="text/javascript">window.location.href="'.$pfad.'";</script>';
	}
	
} // close submit
// ----------------------------- Formular zu Eintragen ---------------------------------------------    
?>
<input type="text" name="who" value="Dein Name" onfocus="value = ''" onblur="if (value == '') {value = 'Dein Name'}" style="width: 150px" /><br />

<input type="text" name="url" value="http://" onfocus="value = ''" onblur="if (value == '') {value = 'http://'}" style="width: 150px" /><br />

<input type="text" name="text" value="Nachricht" onfocus="value = ''" onblur="if (value == '') {value = 'Nachricht'}" style="width: 150px" /><br />
<label>Anti-Spam: 4 + 3 =</label>
<input type="text" name="math" value="" style="width: 46px" />

<div id="error">
<?php 	if($error == "1"){ // Fehler fals vorhanden ausgeben
		echo "<b>$message</b>";
	}
?>	
</div>

<input type="submit" value=" Absenden " name="submit" class="button" style="width: 152px"/>
</div>
<div>
<a href="http://alice-grafixx.de" title="Alice-Grafixx | Photoshop Community">
Grafixx - Messagebox </a> | <a href="">Zurueck</a>
</div>
</fieldset>
</form>

</body>
</html>


Step 3 - mesages.txt


Und zu guter Letzt müsst ihr noch eine Text Datei mit der Bezeichnung messages.txt erstellen, bei dieser muessen die Rechte (CHMOD) auf 777 gesetzt sein.

Tutorial Dateien herunterladen

Liebe Grüße Pascal

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