Grundsätzliches

Auf dieser Seite stelle ich alle wichtigen Skripte zur Verfügung die ich für meine Homepage zusammen gescripted hab. Dazu zählen unter anderem das Gästebuch(PHP mit Datenbankanbindung), das Kontaktformular(PHP), ein simples Newsscript(PHP mit Datenbankanbindung) und ein kleines Script für ein Backend, in dem man z.B. News eintragen oder Gästebucheinträge löschen kann. Und das bequem im Browser, ohne per FTP an die Dateien zu müssen.
Ich werde falls benötigt auch die Datenbanken als .sql Datei mitliefern(damit diese nur noch importiert werden müssen), genauso wie eine minimalistische .css(Cascading Style Sheets) Datei.
Die .php und .css Dateien sind mit dem W3C Validator validiert und somit auf jeden Fall fehlerfrei.
Die Inhalte der Scripts werden in allen Browsern identisch dargestellt

Ich arbeite mit folgenden Versionen/Einstellungen:
  • PHP 5.3.8
  • MySQL-Version 5.0.91
  • CSS validiert mit CSS Level 3
  • HTML validiert mit XHTML 1.0 Transitional
  • <meta http-equiv="content-type" content="text/html; charset=utf-8" />

Ich kann nicht dafür garantieren das die Skripte auch unter anderen Versionen laufen, aber eigentlich denke ich, dass es da keine Probleme geben sollte.

Kontaktformular - Script

  • PHP, Javascript und CSS

  • Einfach unten auf den Button " Quellcode anschauen" drücken, Code kopieren, auf eigener .php Seite einfügen, Mailadresse ändern und fertig ist das Kontaktformular

  • Auswahl zwischen Betreffzeile oder bis zu sechs vorgegebenen Gründen

  • Formularprüfung(Ob Felder beschrieben sind und die E-mail korrekt ist

  • Falls nach dem abschicken Fehler(z.B. keine Emailadresse eingegeben) auftreten bleiben die schon gemachten Eingaben erhalten

  • Falls ihr das ganze in euer eigenes Layout einbauen wollt, dann einfach den Teil im Body(zwischen <body> und </body>) dahin kopieren wo ihr Kontaktformular haben wollt. Dann noch die Styles und das Script in euren Head oder die gesonderten Dateien kopieren

  • Keine Tabellen, sondern ein sauberes Divlayout




Gästebuch - Script

  • Das Gästebuch wurde komplett in PHP5 entwickelt
  • Zur Ausgabe wird HTML5 mit Javascript genutzt
  • Aktuell wird noch MYSQL genutzt, eine Umstellung auf MYSQLI steht aber bevor
  • Die Einträge pro Seite können eingestellt werden, genauso wie die Pflichtfelder
  • Seit kurzem verfügt das Gästebuch auch über eine Live-Vorschaufunktion. Diese dient als Vorbereitung für den kommenden Bilder Upload
  • Falls nach dem abschicken Fehler(z.B. keine Emailadresse eingegeben) auftreten bleiben die schon gemachten Eingaben erhalten
  • Noch läuft alles über normales $_Post, eine Umstellung auf Ajax steht aber kurz bevor
  • Wie bei allen Scripts ist dieses auch gratis und ihr braucht nur den Quellcode anschauen und kopieren. Ich plane aber auch das man das ganze in kürze downloaden kann



News - Script

  • Das Newsscript ist ebenfalls rein auf PHP5 aufgebaut
  • Als Hilfsmittel dienen hier lediglich HTML5 zur Darstellung der news und MYSQL(in kürze MYSQLI) zum speichern und abrufen der Einträge in der Datenbank
  • Zusätzlich plane ich hierzu den Newsticker gratis mit als Script zu veröffentlichen
  • Falls bedarf besteht werde ich den Newsupload aus meinem internen(Admin) Bereich ebenfalls zum download bereit stellen oder als Skript veröffentlichen.
  • Dieser News-Upload verfügt neuerdings über einen Ajax Bilderupload mit diversen Einstellungen






<?php 

// Hier die Mailadresse Eintragen wo die Kontaktmail hin gehen soll
$eigenemail="tomek2k@trash-mail.com";  
 
// Auswahl zwischen Betreffleiste oder Vorgegebenen Gründen
$betreffleiste=false;
 
//Falls Gründe aktiviert sind Hier anzahl der Gründe angeben
$grundzahl=3;
 
//Hier die Gründe Eintragen  ---;
$grund[0]="Grund 1";
$grund[1]="Grund 2";
$grund[2]="Grund 3";
$grund[3]="sdfg";
$grund[4]="sdf";
$grund[5]="ggg";

echo'
<!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" lang="de" xml:lang="de" >
<head>
	<title>Kontaktformular</title>
	<style type="text/css"> 
        #kontakt_container{ width: 100%; height:100%; position:relative;font:16px Georgia, "Times New Roman", Times, serif; line-height:30px;}
        #kontakt_container fieldset{border: 1px solid #5F1801; position:relative; width:560px; margin:0 auto; padding:0}
        #kontakt_container legend{color: #CC0000; font-size: 22px; margin: 0 10px}
        #kontakt_message{ width:300px;padding:20px;position:absolute;left:110px;top:50px;background:#eee; border:1px solid #900;text-align:center}
        #kontakt_grundposition{vertical-align:middle;}
        #kontakt_copyright{position:absolute; bottom:2px; right:2px; line-height:14px;}
        #kontakt_copyright a{font-size:10px; text-decoration:none;}
		.kontakt_links{ float:left; width:120px; margin-left:20px; font-weight:700;}
        .kontakt_rechts{ float:left; width:400px; margin-right:20px;}
        .kontakt_grund{color:#00C;font-weight:700;}
        .kontakt_grundbreite{width:133px; float:left;}
        .kontakt_text{margin:4px 0; width:90%; overflow:auto; }
        .kontakt_clearfloat{clear:both;height:0;font-size:1px;line-height:0;}
        .kontakt_center{text-align:center; margin:auto;}
        .kontakt_rot{color:#F00;}
    </style> 
    <script type="text/javascript">
        function kontakt_error_weg(){
            document.getElementById("kontakt_message").style.display = "none";	
        }	
    </script>
</head>
<body> 
<div id="kontakt_container">
    <form name="kontaktform" method="post" action=""> 
      <fieldset>
        <legend>Kontaktformular</legend>
        <br ⁄>';     
            //wenn Senden gedrückt wird
            if( isset ( $_POST['submit'])) {
                function checkEmailAddress ($betreffAdresse) {
                    if (eregi("^[\.0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$", $betreffAdresse, $check)) { 
                        if(getmxrr(substr(strstr($check[0], '@'), 1), $validate_email_temp)) { 
                            return true;
                        }
                        if(checkdnsrr(substr(strstr($check[0], '@'), 1),"ANY")){
                            return true;
                        }
                    }
                    return false;
                }		
                //Felder in Variablen schreiben
                $vorname=$_POST['Vorname'];
                $nachname=$_POST['Nachname'];
                $betreff=$_POST['Grund'];
                $email=$_POST['Emailadresse'];
                $nachricht=$_POST['Dannlegmallos'];
                //prüfen ob Felder leer sind und die Mailadresse gültig
                if (!$vorname || !$nachname || !$nachricht || !$email || checkEmailAddress($email)!=true){
                    echo '<div id="kontakt_message">';?>
                    <?php //falls ein Feld leer ist:
                    if (!$vorname || !$nachname || !$nachricht || !$email){
                        echo'<h3>Bitte alle Pflichtfelder ausfüllen.</h3>';
                    }
                    //Falls Mailadresse vorhanden aber nicht Gültig ist
                    if ($email && checkEmailAddress ($email)!=true) {
                        echo '<h3>Bitte eine gültige E-Mail Adresse eingeben.</h3>';	
                    }
                	echo'<input type="button" class="kontakt_button" onclick="Javascript:kontakt_error_weg();" value="Schliessen" ⁄>
                    </div>';
                $fehler=true;
                }
                if($fehler!=true){
                //Inhalt der E-Mail definieren
                define("INHALT","Vorname: ".$vorname."<br ⁄>
                        Nachname: ".$nachname."<br ⁄>
                        E-mail: ".$email."<br ⁄>
                        Betreff/Grund: ". $betreff."<br ⁄>
                        Nachricht: \n". $nachricht);
                //E-Mail schicken
                mail($eigenemail,"Nachricht von ".$_SERVER['SERVER_NAME']."(Kontaktformular)",INHALT,"Content-type: text/html; charset=utf-8");
                $mailsend=true;
                //Ausgabe das E-mail erfoglreich verschickt wurde
                echo '<div id="kontakt_message">'; ?>
                <?php
                echo'<h3>E-mail wurde verschickt !!!!</h3>
                <input type="button" class="kontakt_button" onclick="Javascript:kontakt_error_weg();" value="Schliessen" ⁄>
                </div>';
                }
            }     
        if($betreffleiste!=true){
		echo'<div class="kontakt_links">
        	<span class="kontakt_angaben" id="kontakt_grundposition">Grund:</span>
        </div>
        <div class="kontakt_rechts">';
        for($i=0;$i<=$grundzahl-1;$i++){
            echo'<div class="kontakt_grundbreite"><input class="kontakt_grund_input" name="Grund" value="'.$grund[$i].'" type="radio" ⁄>'.$grund[$i].'</div>';
        }
        echo'</div>';}
        echo'<br class="kontakt_clearfloat" ⁄>
        <div class="kontakt_links">
            Vorname<span class="kontakt_rot">*</span>:<br ⁄>
            Nachname<span class="kontakt_rot">*</span>:<br ⁄>
            E-mail<span class="kontakt_rot">*</span>:<br ⁄>';
             if($betreffleiste==true){ echo'Betreff:<br ⁄>';}
            echo'Nachricht<span class="kontakt_rot">*</span>:
        </div>
        <div class="kontakt_rechts">
            <input class="kontakt_text" name="Vorname" type="text" size="46" maxlength="46" ⁄>
            <input class="kontakt_text" name="Nachname" type="text" size="46" maxlength="46" ⁄>
            <input class="kontakt_text" name="Emailadresse" type="text" size="46" maxlength="46" id="Email" ⁄>';
             if($betreffleiste==true){ echo'<input class="kontakt_text" name="Grund" type="text" size="46" maxlength="46"⁄>';}
            echo'<textarea class="kontakt_text" name="Dannlegmallos" cols="36" rows="5" id="los"></textarea>
        </div>
        <br class="kontakt_clearfloat" ⁄>
        <div class="kontakt_center">
        <input class="kontakt_mar_left" type="reset" value="Zurücksetzen" ⁄>    
          <input type="submit" value="Senden" name="submit" ⁄>
        </div>
        <br ⁄>	
        <div id="kontakt_copyright"><a href="http://gobelet.de" target="_blank">©Tomek2k</a></div>	
      </fieldset>
    </form>
  </div>';
 if( isset ( $_POST['submit'])) {
	if($mailsend!=true){
		echo '<script type="text/javascript">document.kontaktform.Vorname.value="'.$vorname.'";</script>';
		echo '<script type="text/javascript">document.kontaktform.Nachname.value="'.$nachname.'";</script>';
		echo '<script type="text/javascript">document.kontaktform.Emailadresse.value="'.$email.'";</script>';
		echo '<script type="text/javascript">document.kontaktform.Dannlegmallos.value="'.$nachricht.'";</script>';
        if($betreffleiste==true){
        	echo '<script type="text/javascript">document.kontaktform.Grund.value="'.$betreff.'";</script>';
        }
	}
	else{
		echo '<script type="text/javascript">document.kontaktform.Vorname.value = "";</script>';
		echo '<script type="text/javascript">document.kontaktform.Nachname.value = "";</script>';
		echo '<script type="text/javascript">document.kontaktform.Emailadresse.value = "";</script>';
		echo '<script type="text/javascript">document.kontaktform.Dannlegmallos.value = "";	</script>';	
	};
}
echo'</body>
</html>'; 
?>