• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Textarea in Datenbank speichern

brainstorm001

Neues Mitglied
Hey Leute habe folgendes Problem. Auf meiner Website soll eine textarea Eingabe in eine Datenbank geschrieben werden. Meine Daten werde soweit auch einwandfrei abgefragt und geprüft. Habe mir die Variable $_POST[beschreibung] auch extra ausgegeben wo der Text drin steht, das einzige Problem an der Sache ist, das es nicht in meine Datenbank geht.

Hier mal mein Quellcode. Vielleicht seht ihr ja den Fehler.
Datenbankspalte ist als TYP text eingerichtet. Danke schonmal für die Hilfe.

PHP:
<?php 
include ($_SERVER['DOCUMENT_ROOT']."/projekt_okt2010_2/include/sessionheader.inc.php");
if (@$_SESSION['auth_admin'] != "yes")
{
    header("Location: http://localhost/projekt_okt2010_2/login.php");
    exit();
} 
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
       "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Projekt anlegen</title>
<link rel="stylesheet" type="text/css" href="http://localhost/projekt_okt2010_2/css/default.css"/>
<link rel="stylesheet" type="text/css" href="http://localhost/projekt_okt2010_2/css/design.css"/>
</head>
<body>

         <br/><h1><center><u>Projekt anlegen</u></center></h1><br/><br/>
         
         
  
    <h3><u>Neues Projekt anlegen</u></h3>
    <form action="" method="POST">
    <input type="text" name="new_project" value="Projektname" onFocus="if(this.value=='Projektname') this.value=''"/>
    
    
   <!--Dragdownmenü Betreuer auswahl--!>    
   
    <?php
    include ($_SERVER['DOCUMENT_ROOT']."/projekt_okt2010_2/intern/admin/include/db_zugriff.inc.php");
    $sql = "SELECT ID, Betreuer FROM betreuer ORDER BY Betreuer ASC";
    $result = mysqli_query($db, $sql);
    $result1 = mysqli_query($db, $sql);
    
     echo "<select name='betreuer'>";
     echo "<option>Betreuer Auswahl:</option>";

             while ($row = mysqli_fetch_array($result, MYSQL_ASSOC)) {
                echo '<option value="'.$row["ID"].'">'.$row["Betreuer"].'</option>';

            }
 
            echo "</select>";
             
    ?>
    <?php
       
     echo "<select name='betreuer2'>";
     echo "<option>weiterer Betreuer:</option>";
     echo "<option>keine Angabe</option>";
            
             while ($row = mysqli_fetch_array($result1, MYSQL_ASSOC)) {
                echo '<option value="'.$row["ID"].'">'.$row["Betreuer"].'</option>';             
             
            }
 
            echo "</select>";
            
        mysqli_close($db);
    ?>
 <!--Dragdownmenü Jahr auswahl--!>
    
     <?php
    include ($_SERVER['DOCUMENT_ROOT']."/projekt_okt2010_2/intern/admin/include/db_zugriff.inc.php");
    $sql2 = "SELECT ID, Jahr FROM jahre ORDER BY Jahr";
    $result2 = mysqli_query($db, $sql2);
    
     echo "<select name='jahr'>";
     echo "<option>Projektjahr Auswahl:</option>";
     
            while ($row = mysqli_fetch_array($result2, MYSQL_ASSOC)) {
                echo '<option value="'.$row["ID"].'">'.$row["Jahr"].'</option>';             
             
            }
 
            echo "</select>";
        
             mysqli_close($db);
             
             echo "<br>";
             echo "<br>";
             
    ?>
    

    Projektbeschreibung:
    <br>
    <textarea name="beschreibung" cols="50" rows="10" maxlength="300"></textarea>
    <br>
    max. 300 Zeichen
    <br>
    <input type="submit" name="send_project" value="Absenden"/>
    
    
    <?php
    if (isset($_POST["send_project"]))
    {

        $fehler = false;
        $fehlertext = "<p>";
        
        if (empty($_POST['new_project']) || $_POST['new_project'] == "Projektname")
        {
            $fehler = true;
            $fehlertext .= "Der Projektname fehlt!<br>";
        }
        if (empty($_POST['betreuer']) || $_POST['betreuer'] == "Betreuer Auswahl:")
        {
            $fehler = true;
            $fehlertext .= "Der 1. Betreuer fehlt!<br>";
        }
        if (empty($_POST['betreuer2']) || $_POST['betreuer2'] == "weiterer Betreuer:")
        {
            $fehler = true;
            $fehlertext .= "Der 2. Betreuer fehlt!<br>";
        }
        
        if (empty($_POST['jahr']) || $_POST['jahr'] == "Projektjahr Auswahl:")
        {
            $fehler = true;
            $fehlertext .= "Das Projektjahr fehlt!<br>";
        }
        
        if (empty($_POST['beschreibung']))
        {
            $fehler = true;
            $fehlertext .= "Die Beschreibung fehlt!<br>";
        }
        
        if (isset($_POST["send_projekt"]))
        {
            $_POST['beschreibung'] = stripslashes($_POST['beschreibung']);
             $_POST['beschreibung'] = strip_tags($_POST['beschreibung'], '<p><br><b><i><a>');
             $_POST['beschreibung'] = mysqli_real_escape_string($_POST['beschreibung']);
             $_POST['beschreibung'] = "'" . $_POST['beschreibung'] . "'";
        }
        
        if ($fehler)
        {
            echo "$fehlertext</p>";
            echo "<meta http-equiv='refresh' content='3; URL=http://localhost/projekt_okt2010_2/intern/admin/admin_bereich.php?page=projekt_anlegen'>";
        }
        else
        
        {
        include ($_SERVER['DOCUMENT_ROOT']."/projekt_okt2010_2/intern/admin/include/db_zugriff.inc.php");
        $sql2 = "INSERT INTO projekt (ID, Projekt, BetreuerID, Betreuer2ID, JahrID, Beschreibung) VALUES ('', '$_POST[new_project]', '$_POST[betreuer]', 
        '$_POST[betreuer2]', '$_POST[jahr]', '$_POST[beschreibung])'";
        mysqli_query($db, $sql2);
        
        if (mysqli_affected_rows($db) > 0)
        {
             echo "<br>";
             echo "<br>";
            $meldung =  "Projekt erfolgreich angelegt!";
            echo "<meta http-equiv='refresh' content='3; URL=http://localhost/projekt_okt2010_2/intern/admin/admin_bereich.php?page=projekt_anlegen'>";
        }
        else
        {
             echo $_POST[beschreibung];
             echo "<br>";
             echo "<br>";
            $meldung =  "Eintrag nicht erfolgreich!";
            echo "<meta http-equiv='refresh' content='3; URL=http://localhost/projekt_okt2010_2/intern/admin/admin_bereich.php?page=projekt_anlegen'>";
        }
        mysqli_close($db);
    }
  }
    
    echo $meldung;
    ?>
      </form>   
                                                               
         
         
                    
</body>
</html>
 
Du hast hier

PHP:
$sql2 = "INSERT INTO projekt (ID, Projekt, BetreuerID, Betreuer2ID, JahrID, Beschreibung) VALUES ('', '$_POST[new_project]', '$_POST[betreuer]', 
        '$_POST[betreuer2]', '$_POST[jahr]', '$_POST[beschreibung])'";

einen Fehler im Statement. Zudem setzt Du in $_POST['beschreibung']

PHP:
$_POST['beschreibung'] = stripslashes($_POST['beschreibung']);
             $_POST['beschreibung'] = strip_tags($_POST['beschreibung'], '<p><br><b><i><a>');
             $_POST['beschreibung'] = mysqli_real_escape_string($_POST['beschreibung']);
             $_POST['beschreibung'] = "'" . $_POST['beschreibung'] . "'";

einen String zusammen der hier dann ein fehlerhaftes Statement ergeben würde.

Korrigiere das Statement mal so:

PHP:
$sql2 = "INSERT INTO projekt (ID, Projekt, BetreuerID, Betreuer2ID, JahrID, Beschreibung) VALUES ('', '$_POST[new_project]', '$_POST[betreuer]', 
        '$_POST[betreuer2]', '$_POST[jahr]', [COLOR="red"]".$_POST['beschreibung']."[/COLOR])'";

Wenn das auch nicht geht, lass dir $sql2 per echo ausgeben und verwende PHP: mysqli->error - Manual um die Fehlermeldung vom MySQL-Server abzufragen.
 
Und schon gehts

Der Hammer, vielen Dank für deine Hilfe

und sorry nochmal das ich euch damit eure Zeit gestohlen habe das ich nur so nen Statement fehler hatte.
 
Zurück
Oben