[PHP & MySQL] MySQL trägt nicht ein

.Senseless
Ich verzweifle gleich.

eintragen
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
<? 
$text=$_POST['text'];
$title=$_POST['title'];

$text = nl2br($text);

$time = time();
$datum = date("d.m.Y", $time);

$inhalt="<br><table width="400">
<tr>
<td align="center" id="titel" width="50%">$datum</td><td id="titel"><b>$title</b></td></tr><tr><td colspan="2">$text</td>
</tr>
</table>";
$inhalt = str_replace("\'","",$inhalt);

  $abfrage = "SELECT Tagebuch FROM Pferd WHERE Name = '".$pferd."'";
  $ergebnis = mysql_query($abfrage);
  while($row = mysql_fetch_object($ergebnis))
    {
    $tgb = $row->Tagebuch;
    }
if($tgb == "")
{
  $aendern = "UPDATE Pferd Set Tagebuch = '".$inhalt."' WHERE Name = '".$pferd."'";
  $update = mysql_query($aendern);
}
else
{
$tgb .= "<br>$inhalt";
  $aendern = "UPDATE Pfer Set Tagebuch = '".$tgb."' WHERE Name = '".$pferd."'";
  $update = mysql_query($aendern);
echo $tgb;
}

  $abfrage = "SELECT AnzahlEintrag FROM Pferd WHERE Name = '".$pferd."'";
  $ergebnis = mysql_query($abfrage);
  while($row = mysql_fetch_object($ergebnis))
    {
    $ae = $row->AnzahlEintrag;
    }
  $ae++;
  $aendern = "UPDATE Pfer Set AnzahlEintrag = '".$ae."' WHERE Name = '".$pferd."'";
  $update = mysql_query($aendern);
?>


Beim Schreiben ein einfach Formular. Die Felder heißen richtig, hab ich kontrolliert.
Dieses "echo $tgb;" zur Kontrolle bringt ja auch die richtige Tabelle raus.. Aber warum trägt er sie nicht ein? oO
Firestar
code:
1:
 $aendern = "UPDATE Pfer Set Tagebuch = '".$tgb."' WHERE Name = '".$pferd."'";


Sollte es nicht heissen "UPDATE Pferd" statt "UPDATE Pfer"?

Gruß,
Christoph
.Senseless
Ups.
Geht aber trotzdem nicht. :/
Yellow
weiter unten ist Pferd wieder falsch geschrieben... (zeile 43)
Firestar
Wie ist den die Struktur deiner MySQL Tabelle aufgebaut?
Sprich wie hast du das Feld "Pferd" definiert?

Was anderes noch... Überprüftst du eigentlich irgendwo im Skript noch die Eingaben des Benutzers (Stichwort: Sicherheit, XSS und SQL Injection)?

Gruß,
Christoph
.Senseless
²Yellow: Das ist nur, damit er beim Testen nicht immer die Anzahl der Einträge erhöht. (;

²Firestar: Die Tabelle Pferd hat Spalten wie Alter, Name etc. 'Tagebuch' ist longtext.
Oder was meinst du?

Ich ersetze nur ' mit str_replace, weil mir mysql_real_escape_string oder so Zeilenumbrüche etc. ersetzt und irgendwie die Tabelle kaputt macht.
.Senseless
Auf Wunsch geschlossen xD