PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQLi/PDO/(MySQL) (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Formular das nach verbesserung sucht (http://www.selfphp.de/forum/showthread.php?t=24329)

wosola 07.08.2011 01:01:29

Formular das nach verbesserung sucht
 
Hallo Zusammen
wenn man nicht ständig sich mit den programmiersprachen beschäftigt rostet man anscheinend ein. bin zwar schon etwas länger hier gemeldet, aber noch oder schon wieder anfänger.
ich sitze seit einigen wochen an einen eingabeformular für meine datenbank. das meiste habe ich schon zum laufen gebracht. brauche aber eure hilfe bei den feinheiten. wenn ich das formular komplett ausfülle, wird es korrekt in die datenbank eingetragen. wenn ich einige felder nicht ausfülle, wird es nicht eingetragen. wobei nicht immer alle felder ausgefüllt werden brauchen. ich habe es schon mit einem leerstring versucht, aber das klappt nicht.
außerdem noch die frage: besteht irgendwie die möglichkeit, das listenelemente in ein textareafeld automatisch eingetragen werden, wenn man enter drückt?
hier mein scriptauszug:
Code:

if (isset($_POST['submit'])) {
               
                $ausgabe = '';
                $fehler = '';
               
if (isset($_POST['cat_id'])  && !is_array($_POST['cat_id']) && $_POST['cat_id'] !=''){
                        $ausgabe .= 'Auswahl' . htmlspecialchars($_POST['cat_id']).'<br />';
                        $cat_id = $_POST['cat_id'];
                }else {
                        $fehler .='Keine Kategorie ausgewählt!<br />';
        }
if (isset($_FILES['bild'])){
                        $datei= $_FILES['bild'];
                        if ($datei['type'] == 'image/jpeg'){
                                copy($datei['tmp_name'], 'bilder/'. $datei['name']);
                                $bild=  ' '."<img src='bilder/{$datei['name']}' width='250'/>" ;
                        }
                }
       

if (isset($_POST['titel'])  && !is_array($_POST['titel']) && $_POST['titel'] != ''){
                        $ausgabe .= 'Titel' . htmlspecialchars($_POST['titel']).'<br />';
                        $titel= $_POST['titel'];
                }else {
                        $fehler .= 'Keinen Titel angegeben!<br />';
        }

if (isset($_POST['zutaten'])  && !is_array($_POST['zutaten']) && $_POST['zutaten'] != ''){
                        $ausgabe .= 'Zutaten:' . htmlspecialchars($_POST['zutaten']).'<br />';
                        $zutaten = '<ul><li> '. $_POST['zutaten'].'</li></ul>';
                }else {
                        $fehler .= 'Keine Zutaten angegeben!<br />';
if (isset($_POST['besonderes'])  && !is_array($_POST['besonderes']) ){
                        $ausgabe .= 'Besonderes:' . htmlspecialchars($_POST['besonderes']).'<br />';
                        $besonderes = ' '. $_POST['besonderes'];
                }else {
                       
        }       
if ($fehler == '') {
                        $server='localhost';
        $benutzer='root';
        $passwort='';
        $datenbank='kochen';
        $id=NULL;
        $db= new mysqli($server, $benutzer, $passwort, $datenbank);
       
$statement = $db->prepare("
                INSERT INTO
rezepte (id, cat_id, titel, bild, personen, zutaten, zubereitung, besonderes, tipps, zeit, id_land)
                                                VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);                                                               
                                                                ");
                                $statement->bind_param('iississsssi', $id, $cat_id, $titel, $bild, $personen, $zutaten, $zubereitung, $besonderes, $tipps, $zeit, $id_land);
                                $statement->execute();
                                $statement->close();
                                $db->close();
                echo "$ausgabe"        ;
                echo '</body><html/>';
                exit();
        } else {
                echo "<b>$fehler</b>";
        }
       
        }

       

?>

nur die ersten felder sollen pflichtfelder sein.
wenn ihr noch den restlichen html-code braucht, wovon ich nicht ausgehe, meldet euch.
wie ist es eigendlich bei mir mit der sicherheit? hoffe die ist noch einigermassen ok?
und wie sieht es bei auswahlfeldern aus, bei denen ich nur integer zahlen übergebe, muss ich die auch mit htmlspecialchars behandeln?
ich danke schon einmal für euer bemühen
lg wolfgang


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:40:33 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.