timon: Verzweiflung mit doppelter datenbankeingabe.

Beitrag lesen

Hallo,

Ich habe hier ein Problem, dass ich einfach nicht verstehe. Ich habe ein Blog-kommentar-system geschrieben, und irgendetwas stimmt da nicht. Jedesmal, wenn ich über ein eingabeformular die daten sende, wird der gewollte eintrag in die datenbank eingetragen, und danach ein leerer nicht gewollter.


erklärung:
1. Spalte: ID
2. Spalte: titel
3. Spalte: datum
4. Spalte: userid
5. spalte: übergeordneter blogeintrag
6. spalte: text

nun verstehe ich aber nicht, warum dieser leere datensatz kommt.

hier das formular:

  
<?  
$idd = htmlspecialchars($_GET['id'],ENT_QUOTES);  
echo "<form method=\"post\" action=\"comments.php?mode=insert&id=".$idd."\" name=\"postform\">";  
?>  
<hr>Titel:  
<input type="text" name="comment_titel">  
<p>  
Kommentar:  
<br>  
<textarea name="text" cols="40" rows="5">  
</textarea><hr>  
<input type="submit" value="Kommentar senden">  
</form>  

und hier das eintragenin  die datenbank:

  
$db = mysql_connect("localhost","*****","*****");  
 if (!$db) {  
  echo "fehler mit datenbank :(";  
 } else {  
 mysql_select_db("*****",$db);  
  
 $idd = htmlspecialchars($_GET['id'],ENT_QUOTES);  
 $datum = date ("F j,Y");  
 $var1 = substr(htmlspecialchars($_POST['comment_titel'],ENT_QUOTES),0,150);  
 $var2 = $_SESSION['login_id'];  
 $var3 = substr(htmlspecialchars($_POST['text'],ENT_QUOTES),0,150);  
 $post_query = mysql_query("insert into comment (ID,titel,datum,userid,welcher,text) values ('','$var1','$datum','$var2','$idd','$var3')");  
 $update_query = mysql_query("update news set comments = comments + 1 where id=".$idd.";");  
   echo "<center>Danke für den Kommentar. Bitte warten oder <p><a href=\"comments.php?mode=show&id=$idd#bottom\" target=\"_self\">hier klicken um kommentar zu sehen</a></center>  
   <script language=\"javascript\" type=\"text/javascript\">  
   <!--  
   window.setTimeout(\"window.open('comments.php?mode=show&id=$idd#bottom','_self')\",\"3000\");  
   //-->  
   </script>  
   ";  
   mysql_close ($db);  
 }  

vielleicht kann jemand herausfinden, woran das liegen kann...

vielen dank schon mal für die hilfe...

--
Käsebrötchen