Ejemplo n.º 1
0
<h2>Galerie-Upload</h2>

<?php 
include 'php/formularbibliothek.php';
// prüfen, ob das Formular abgesendet wurde
if (isset($_POST['hochladen'])) {
    // wir validieren die Texteingaben
    $beschreibung = textValidieren($_POST['beschreibung']);
    $ort = textValidieren($_POST['ort']);
    // wir verarbeiten das hochgeladene Bild
    // falls das Hochladen des Bilds funktioniert hat
    if ($_FILES['datei']['error'] == 0) {
        $quelle = $_FILES['datei']['tmp_name'];
        // mögliches Problem - Doppelungen von Dateinamen möglich
        // Ansatz: Dateinamen durch Verwendung der MD5-Prüfsumme eindeutig machen
        $md5checksum = md5_file($_FILES['datei']['tmp_name']);
        $ziel = 'upload/' . $md5checksum . '_' . $_FILES['datei']['name'];
        // prüfen, ob das Bild bereits hochgeladen worden ist ...
        // falls ja, müsste der M5-Hashwert bereits in der Datenbank erfasst sein
        $link = mysql_connect('10.10.102.145', 'www', 'linux') or die(mysql_error());
        mysql_select_db('db_galerie') or die(mysql_error());
        $query = "SELECT\r\n                            *\r\n                         FROM \r\n                            bilder\r\n                         WHERE\r\n                            md5checksum = '" . $md5checksum . "'";
        $result = mysql_query($query);
        // kein Datensatz mit dem Hashwert gefunden?
        if (mysql_num_rows($result) == 0) {
            // .. dann weiter machen
            // verschieben der Datei
            move_uploaded_file($quelle, $ziel);
            // neuen Datensatz in die Datenbank eintragen
            $query = "INSERT INTO\r\n                                bilder\r\n                             VALUES\r\n                             (\r\n                                0,\r\n                                '" . mysql_real_escape_string($ziel) . "',\r\n                                '" . mysql_real_escape_string($beschreibung) . "',\r\n                                now(),\r\n                                '" . mysql_real_escape_string($ort) . "',\r\n                                '" . $md5checksum . "',\r\n                                '" . $_SERVER['REMOTE_ADDR'] . "'\r\n                             )";
            mysql_query($query);
Ejemplo n.º 2
0
 //                  ____eingabe____         ( _ => Whitespace (Leerzeichen, Tabulator, ..)
 //                      eingabe
 // wir lassen $_POST['benutzer'] validieren
 if ($benutzer = textValidieren($_POST['benutzer'])) {
     echo 'Benutzername ist ok' . PHP_EOL;
 } else {
     echo 'Fehler: Benutzername nicht eingegeben' . PHP_EOL;
 }
 // wir lassen $_POST['passwort'] validieren
 if ($passwort = textValidieren($_POST['passwort'])) {
     echo 'Passwort ist ok' . PHP_EOL;
 } else {
     echo 'Fehler: PW nicht eingegeben' . PHP_EOL;
 }
 // wir lassen $_POST['kommentar'] validieren
 if ($kommentar = textValidieren($_POST['kommentar'])) {
     echo 'Kommentar ist ok' . PHP_EOL;
 } else {
     echo 'Fehler: Kommentar nicht eingegeben' . PHP_EOL;
 }
 // Auswahllisten könnten als Pflichteingabe vergessen woden sein
 // notwendige Prüfungen:
 //      auf gültigen Wert - üblicherweise wird die erste Option mit einem "ungültigen" Wert belegt, z.B. 0
 //                          enthält die Auswahl dann diesen Wert, hat der Benutzer die Eingabe vergessen
 // wir lassen $_POST['auswahl'] validieren
 if ($auswahl = auswahlValidieren($_POST['auswahl'])) {
     echo 'Auswahl ist ok' . PHP_EOL;
 } else {
     echo 'Fehler: Auswahl nicht eingegeben' . PHP_EOL;
 }
 // Radiobuttons können bei umsichtiger Formulargestaltung keine Eingabefehler produzieren, im Sinne
Ejemplo n.º 3
0
<h2>Ins Gästebuch eintragen</h2>

<?php 
include 'php/formularbibliothek.php';
// falls das Formular gesendet wurde
if (isset($_POST['eintragen'])) {
    // falls die Validierung des Namens fehlschlägt, merken wir uns das
    if (($name = textValidieren($_POST['name'])) == false) {
        $error['name'] = 'Bitte Eingabe des Namens prüfen';
    }
    // falls die Validierung der Email fehlschlägt, merken wir uns das
    if (($email = textValidieren($_POST['email'])) == false) {
        $error['email'] = 'Bitte Eingabe der Email-Adresse prüfen';
    }
    // falls die Validierung des Kommentars fehlschlägt, merken wir uns das
    if (($kommentar = textValidieren($_POST['kommentar'])) == false) {
        $error['kommentar'] = 'Bitte Eingabe des Kommentars prüfen';
    }
    // falls alles fehlerfrei bis hierhin, werden wir den Eintrag in die
    // Datenbank übernehmen
    if (!isset($error)) {
        // Verbindung zum Datenbankserver herstellen
        $link = mysql_connect('10.10.102.145', 'www', 'linux') or die(mysql_error());
        // Datenbank auswählen
        mysql_select_db('db_guestbook') or die(mysql_error());
        // Abfrage zum Eintragen des Datensatzes formulieren
        $query = "INSERT INTO \r\n                            eintraege\r\n                         VALUES\r\n                         (\r\n                            0,\r\n                            '" . mysql_real_escape_string($name) . "',\r\n                            '" . mysql_real_escape_string($email) . "',\r\n                            now(),\r\n                            '" . $_SERVER['REMOTE_ADDR'] . "',\r\n                            '" . mysql_real_escape_string($kommentar) . "'                                     \r\n                         )";
        if (mysql_query($query)) {
            echo "Vielen Dank für Ihren Eintrag";
        } else {
            echo "Oopsi. Bitte prüfen Sie Ihre Eingaben";