Formular Eingabefelder vorbelegen

Diskutiere Formular Eingabefelder vorbelegen im Scriptsprachen Forum; Hallo, ich möchte in meinem Formular zuvor abgefragte Datenbankwerte in die jeweiligen Eingabefelder als Vorgabe einsetzen (Editierfunktion von...

  1. Nafets_2017
    Nafets_2017 Neues Mitglied
    Hallo,
    ich möchte in meinem Formular zuvor abgefragte Datenbankwerte in die jeweiligen Eingabefelder als Vorgabe einsetzen (Editierfunktion von Dateneingaben). Egal an welcher Stelle ich die MySQL-Abfrage einbringe, erfolgt dieses jedoch nicht. Vermutlich werden diese Daten durch die Sicherheitsabfrage bzgl. Feldinhalt überschrieben Wie kann ich das lösen bzw. was mache ich falsch?
    Danke für Infos.
    Beste Grüße, Stefan

    (Wenn ich hier im falschen Forum bin, bitte ich dieses zu entschuldigen.)

    PHP:

    <?php
    error_reporting(E_ALL);
    date_default_timezone_set("Europe/Berlin");


    $error = false;
    $errors = array();
    $receiver = 'info@sxxx.yy';


    function check_email ($string) {
        // RegEx created by Myle Ott, found at regexlib.com
        return preg_match('/^([a-zA-Z0-9_\-])+(\.([a-zA-Z0-9_\-])+)*@((\[(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5]))\]))|((([a-zA-Z0-9])+(([\-])+([a-zA-Z0-9])+)*\.)+([a-zA-Z])+(([\-])+([a-zA-Z0-9])+)*))$/i', $string);
    }

    function check_onlynumbers ($string) {
        return preg_match('/^[0-9,.]{1,}$/', $string);
    }

    function check_onlyletters ($string) {
        return preg_match('/^[a-zA-ZäöüÄÖÜß]{1,}$/', $string);
    }

    function send_email ($subject, $body, $receiver, $html = 1) {
        if ($html != 1) {
            $body = str_replace('<br />', "\n", $body);
            $body = str_replace('<br>', "\n", $body);
            $body = strip_tags($body);
        }

        $subject = str_replace('\n', '', $subject);
        $subject = str_replace('\r', '', $subject);

        if ($html) {
            $header    = 'MIME-Version: 1.0' . "\n";
            $header .= 'Content-type: text/html; charset=utf-8'."\n";
            $header .= 'From: '.$receiver.' <'.$receiver.'>'."\n";
        } else {
            $header    = 'MIME-Version: 1.0' . "\n";
            $header .= 'From: '.$receiver.' <'.$receiver.'>'."\n";
        }

        if (mail($receiver, $subject, $body, $header)) {
            return true;
        } else {
            return false;
        }
    }

    function array_stripslashes(&$var) {
        if(is_string($var)) {
            $var = stripslashes($var);
        } else {
            if(is_array($var))
                foreach($var as $key => $value)
                    array_stripslashes($var[$key]);
        }
    }

    if(get_magic_quotes_gpc()){
      array_stripslashes($_GET);
      array_stripslashes($_POST);
      array_stripslashes($_REQUEST);
      array_stripslashes($_COOKIE);
    }

    if (!empty($_POST)) {
        // Prüfung für das Feld "Startdatum"
        $errors['startdatum'] = null;    if (empty($_POST['startdatum'])) {
            $error = true;
            $errors['startdatum'] = ' class="error"';    }

        // Prüfung für das Feld "Enddatum"
        $errors['enddatum'] = null;    if (empty($_POST['enddatum'])) {
            $error = true;
            $errors['enddatum'] = ' class="error"';    }

        // Prüfung für das Feld "Ueberschrift"
        $errors['ueberschrift'] = null;    if (empty($_POST['ueberschrift'])) {
            $error = true;
            $errors['ueberschrift'] = ' class="error"';    }

        // Prüfung für das Feld "Meldung"
        $errors['meldung'] = null;    if (empty($_POST['meldung'])) {
            $error = true;
            $errors['meldung'] = ' class="error"';    }

        // Prüfung für das Feld "Link"
    //    $errors['link'] = null;    if (empty($_POST['link'])) {
    //        $error = true;
    //        $errors['link'] = ' class="error"';    }

        // Prüfung für das Feld "Autor"
        $errors['autor'] = null;    if (empty($_POST['autor'])) {
            $error = true;
            $errors['autor'] = ' class="error"';    }

    }
        $_text_idtbl = (!empty($_POST['idtbl']) ? htmlspecialchars($_POST['idtbl'], ENT_QUOTES, 'utf-8') : null);
       
        $_text_startdatum = (!empty($_POST['startdatum']) ? htmlspecialchars($_POST['startdatum'], ENT_QUOTES, 'utf-8') : null);

        $_text_enddatum = (!empty($_POST['enddatum']) ? htmlspecialchars($_POST['enddatum'], ENT_QUOTES, 'utf-8') : null);

        $_text_ueberschrift = (!empty($_POST['ueberschrift']) ? htmlspecialchars($_POST['ueberschrift'], ENT_QUOTES, 'utf-8') : null);

        $_textarea_meldung = (!empty($_POST['meldung']) ? htmlspecialchars($_POST['meldung'], ENT_QUOTES, 'utf-8') : null);

        $_text_link = (!empty($_POST['link']) ? htmlspecialchars($_POST['link'], ENT_QUOTES, 'utf-8') : null);

        $_select_autor_Autor01 = (!empty($_POST['autor']) && $_POST['autor'] == 'Autor01' ? ' selected="selected"' : null);
        $_select_autor_Autor02 = (!empty($_POST['autor']) && $_POST['autor'] == 'Autor02' ? ' selected="selected"' : null);

    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>Kurznews</title>

    <link rel="stylesheet" type="text/css" href="inc/jquery-ui-1_10_3.css" />
    <link rel="stylesheet" type="text/css" href="inc/kurznews.css" />

    <script src="inc/jquery-1.9.1.js"></script>
    <script src="inc/jquery-ui.js"></script>
    <script>
    $(function() {
      $.datepicker.regional["de"] = {clearText: "löschen", clearStatus: "aktuelles Datum löschen",
                    minDate: new Date(),            
                    closeText: "schließen", closeStatus: "ohne Änderungen schließen",
                    prevText: "zurück", prevStatus: "letzten Monat zeigen",
                    nextText: "vor", nextStatus: "naechsten Monat zeigen",
                    currentText: "heute", currentStatus: "",
                    monthNames: ["Januar","Februar","März","April","Mai","Juni",
                    "Juli","August","September","Oktober","November","Dezember"],
                    monthNamesShort: ["Jan","Feb","Mär","Apr","Mai","Jun",
                    "Jul","Aug","Sep","Okt","Nov","Dez"],                            
                    monthStatus: "anderen Monat anzeigen", yearStatus: "anderes Jahr anzeigen",
                    weekHeader: "Wo", weekStatus: "Woche des Monats",
                    dayNames: ["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],
                    dayNamesShort: ["So","Mo","Di","Mi","Do","Fr","Sa"],
                    dayNamesMin: ["So","Mo","Di","Mi","Do","Fr","Sa"],
                    dayStatus: "Setze DD als ersten Wochentag", dateStatus: "Wähle D, M d",
                    dateFormat: "dd.mm.yy", firstDay: 1, initStatus: "Wähle ein Datum", isRTL: false,
                    changeMonth: true, changeYear: true, showButtonPanel: true,showWeek: true};
                    $.datepicker.setDefaults($.datepicker.regional["de"]);
      $( "#startdatum" ).datepicker({ dateFormat:"dd-mm-yy"});
      $( "#startdatum" ).datepicker("setDate", new Date());
      $( "#enddatum" ).datepicker({ dateFormat:"dd-mm-yy"});
     
    });
    </script>

    </head>
    <body>
    <?php
    if ($error || empty($_POST)) {?>

    <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF'], ENT_QUOTES, 'utf-8'); ?>" method="post">

    <fieldset>
    <legend>Kurznews</legend>
    <div class="formdesign">

    <?php if ($error) { ?>
    <div class="error_msg">Bitte alle mit * markierten Felder ausfüllen.</div>
    <?php } ?>
    <div>
        <label for="idtbl"<?php echo !empty($errors['id']) ? $errors['id'] : null ; ?>>id</label>
        <input tabindex="1" type="text" id="idtbl" name="idtbl" value="<?php echo $_text_idtbl; ?>" />
    </div>
    <div>
        <label for="startdatum"<?php echo !empty($errors['startdatum']) ? $errors['startdatum'] : null ; ?>>Startdatum *</label>
        <input tabindex="1" type="text" id="startdatum" name="startdatum" value="<?php echo $_text_startdatum; ?>" />
    </div>
    <div>
        <label for="enddatum"<?php echo !empty($errors['enddatum']) ? $errors['enddatum'] : null ; ?>>Enddatum&nbsp; *</label>
        <input tabindex="2" type="text" id="enddatum" name="enddatum" value="<?php echo $_text_enddatum; ?>" />
    </div>
    <div>
        <label for="ueberschrift"<?php echo !empty($errors['ueberschrift']) ? $errors['ueberschrift'] : null ; ?>>Überschrift *</label>
        <input tabindex="3" type="text" id="ueberschrift" name="ueberschrift" value="<?php echo $_text_ueberschrift; ?>" />
    </div>
    <label for="meldung"<?php echo !empty($errors['meldung']) ? $errors['meldung'] : null ; ?>>Meldung *</label><br />
    <textarea tabindex="4" id="meldung" name="meldung" rows="5" cols="30"><?php echo $_textarea_meldung; ?></textarea>
    <div>
        <label for="link"<?php echo !empty($errors['link']) ? $errors['link'] : null ; ?>>Link</label>
        <input tabindex="5" type="text" id="link" name="link" value="<?php echo $_text_link; ?>" />
    </div>
    <label for="autor"<?php echo !empty($errors['autor']) ? $errors['autor'] : null ; ?>>Autor *</label>
        <select tabindex="6" id="autor" name="autor">
            <option value="Autor01"<?php echo $_select_autor_Autor01; ?>>Autor01</option>
            <option value="Autor02"<?php echo $_select_autor_Autor02; ?>>Autor02</option>
        </select> <br style="clear: both;" />
    <div style="text-align: center; margin: 5px;">
        <input type="submit" value="Änderung eintragen" />
    </div>
    </div>
    </fieldset>
    </form>
    <?php
    } else {

    // Datenbankeintrag  
        include("inc/dbconnect.php");
               
        $startdatum = mysql_real_escape_string($_POST['startdatum']);
        $startdatum = implode('-', array_reverse(explode('-', $startdatum)));
        $enddatum = mysql_real_escape_string($_POST['enddatum']);
        $enddatum = implode('-', array_reverse(explode('-', $enddatum)));
        $ueberschrift = mysql_real_escape_string($_POST['ueberschrift']);
        $meldung = mysql_real_escape_string($_POST['meldung']);
        $link = mysql_real_escape_string($_POST['link']);
        $autor = mysql_real_escape_string($_POST['autor']);
        $aenderung = date("Y-m-d");
                   
        $update = "UPDATE kurznews SET startdatum='$startdatum', enddatum='$enddatum', ueberschrift='$ueberschrift', meldung='$meldung', link='$link', autor='$autor', aenderung='$aenderung' WHERE idtbl='$idtbl'";
                       
        $ergebnis = mysql_query($update);

        if($ergebnis==true){
        echo '<h1>Kurznews</h1>';
        echo "Datenbank-Eintrag erfolgreich";
        echo '<p></p>';
        echo '<p></p>';
        // echo "<img src=\"img/positiv.PNG\" alt=\"\" height=\"122\" width=\"124\" border=\"0\" />";
        echo '<p></p>';
        echo '<p></p>';
        } else
        {
        echo "Datenbank-Eintrag nicht erfolgreich";
        echo '<p></p>';
        echo '<p></p>';              
        // echo "<img src=\"img/negativ.PNG\" alt=\"\" height=\"122\" width=\"124\" border=\"0\" />";
        echo '<p></p>';
        echo '<p></p>';
        }
        mysql_close();

    // Mailversand
       
        $body = '';
        $body .= 'startdatum: '.htmlspecialchars(!empty($_POST['startdatum']) ? $_POST['startdatum'] : '', ENT_QUOTES, 'utf-8').'<br>';
        $body .= 'enddatum: '.htmlspecialchars(!empty($_POST['enddatum']) ? $_POST['enddatum'] : '', ENT_QUOTES, 'utf-8').'<br>';
        $body .= 'ueberschrift: '.htmlspecialchars(!empty($_POST['ueberschrift']) ? $_POST['ueberschrift'] : '', ENT_QUOTES, 'utf-8').'<br>';
        $body .= 'meldung:<br>'.htmlspecialchars(!empty($_POST['meldung']) ? $_POST['meldung'] : '', ENT_QUOTES, 'utf-8').'<br><br>';
        $body .= 'link: '.htmlspecialchars(!empty($_POST['link']) ? $_POST['link'] : '', ENT_QUOTES, 'utf-8').'<br>';
        $body .= 'autor: '.htmlspecialchars(!empty($_POST['autor']) ? $_POST['autor'] : '', ENT_QUOTES, 'utf-8').'<br>';
        if(send_email('Kurznews - Neuer Eintrag', $body, $receiver)) {
            ?>
            <p>Vielen Dank für Ihre Nachricht.</p>
            <p><img src="../../img/positiv.PNG" alt="" width="124" height="122" /></p>
            <p>&nbsp;</p>
            <a href="kurznews.php">Zurück zur Startseite</a>
            <?
        } else {
            ?>
             <p>Das Formular konnte leider nicht abgesendet werden. Bitte versuchen Sie es später noch einmal.</p>
             <p><img src="../../img/negativ.PNG" width="124" height="122" alt="Misserfolg" /></p>
             <p>&nbsp;</p>
             <a href="kurznews.php">Zurück zur Startseite</a>
            <?
        }
    }
    ?></body>
    </html>

     
    Folgender Code wird für die Datenbankabfrage verwendet:

    PHP:
    if (empty($_POST['idtbl'])) {
                           echo 'Es wurde kein Datensatz zur Änderung ausgewählt';
                           echo "<p>&nbsp;</p>";
                           echo "<p>&nbsp;</p>";
                        echo "<img src=\"../img/negativ.PNG\" alt=\"\" height=\"122\" width=\"124\" border=\"0\" />";
                        echo "<p>&nbsp;</p>";
                        echo "<p>&nbsp;</p>";
                           echo "<p>&nbsp;</p>";
                         
                        } else
                        {                
                        include("inc/dbconnect.php");
                        $abfrage = "SELECT * FROM kurznews WHERE idtbl = $_POST[idtbl]";
                        $ergebnis = mysql_query($abfrage);
                        $value = mysql_fetch_assoc($ergebnis);
                        $idtbl = $value['idtbl'];
                        $startdatum = $value['startdatum'];
                        $enddatum = $value['enddatum'];
                        $ueberschrift = $value['ueberschrift'];
                        $meldung = $value['meldung'];
                        $link = $value['link'];
                        $autor = $value['autor'];
                       
                        mysql_close();
               
                        }
     
  2. Vielleicht helfen dir diese Grundlagen hier weiter: (hier klicken)
  3. VfL_Freak
    VfL_Freak Bekanntes Mitglied
    Moin,
    richtig, PHP ist nun mal nicht Java :p
    und schon gar kein Anfänger-Thema !!

    Versuch es besser in einem PHP-spezischen Forum :cool:

    VG Klaus
     
  4. Nafets_2017
    Nafets_2017 Neues Mitglied
    Hallo,

    danke - ich versuche es dann an anderer Stelle.

    Beste Grüße
    Stefan
     
  5. Hast du dir unsere Java-Grundlagen hier schon gesichert? *Klick*
Die Seite wird geladen...

Formular Eingabefelder vorbelegen - Ähnliche Themen

Mit JSF Formular in Datenbank schreiben
Mit JSF Formular in Datenbank schreiben im Forum Java Basics - Anfänger-Themen
HTML Formular ausführen
HTML Formular ausführen im Forum Allgemeine Java-Themen
JavaScript (Formulare,Patternmatching,reguläre Ausdrücke,DOM..)
JavaScript (Formulare,Patternmatching,reguläre Ausdrücke,DOM..) im Forum Private Stellangebote und Stellensuche von Usern
Brauche Denkanstoß: Weitergabe von Kontaktinfos aus verschiedenen Kontaktformularen von Webseiten
Brauche Denkanstoß: Weitergabe von Kontaktinfos aus verschiedenen Kontaktformularen von Webseiten im Forum Java Basics - Anfänger-Themen
Javascript um eine Seite in einem PDF Formular ein-/Ausblenden zu lassen
Javascript um eine Seite in einem PDF Formular ein-/Ausblenden zu lassen im Forum Für Verirrte - Fragen zu JavaScript
Thema: Formular Eingabefelder vorbelegen