Angaben werden nicht in mySQL-DB eingefügt

unlord

Erfahrenes Mitglied
Abend...
hab mal wieder ein Problem und wahrscheinlich auch mal wieder ein Brett vorm Kopp...

mein Problem ist folgendes:
Eigentlich sollen die Daten, die man bei den Inputs einträgt, nach dem Klicken auf "Eintragen", sofort in die mySQL-DB eingefügt werden... nur funktioniert das irgendwie nicht...

PHP:
echo "neuen Gästebucheintrag erstellen<br><br><br>";
	echo "<form name=\"gb\" action=\"index.php?page=gb\" method=\"POST\">";
	echo 'Name*<br><input type="text" name="name" size="25" class=inputs><br>';
	echo 'E-Mail<br><input type="text" name="mail" size="25" class=inputs><br>';
	echo 'Homepage<br><input type="text" name="hp" size="25" class=inputs><br>';
	echo 'Eintrag*<br><textarea class=inputs name="content" cols="55" rows="9"></textarea><br><br>';
	echo "<a href=\"pages/addSmilies.php?formName=gb\" target=\"Smilies\" onClick=\"window.open('','Smilies','top=50,screenX=50,left=100,screenY=100,height=250,width=250')\">Smilie-Liste</a><br>";
	echo "(Felder mit * müssen ausgefüllt werden)<br><br>";
	echo '<input type="submit" value="Eintragen" class=inputs>&nbsp;&nbsp;<input type="reset" value="Angaben löschen" class=inputs></form>';

....das sind die Felder zum eintragen und ein bisschen weiter oben...

PHP:
if(isset($_POST["name"])) {
		if((trim($_POST["name"] != "")) AND (trim($_POST["content"] != ""))) {
			$name = $_POST["name"];
			$mail = $_POST["mail"];
			$hp = $_POST["hp"];
			$content = $_POST["content"];
			$tag = date("d");
			$monat = date("m");
			$jahr = date("Y");
			$hour = date("H");
			$minute = date("i");
			$date = $tag.".".$monat.".".$jahr;
			$time = $hour.":".$minute;
			$query = "INSERT INTO gb (Name, E-Mail, Homepage, Content, Date, Time) VALUES ('$name', '$mail', '$hp', '$content', '$date', '$time')";
			mysql_query($query);
			echo '<center>Der Gästebuch-Eintrag wurde erfolgreich hinzugefügt.<br><br></center>';
		} else {
			echo '<center><font color="red">Die Felder "Name" und "Eintrag" müssen ausgefüllt werden.</font><br><br></center>';
		}
	}

...das mySQL-Script.

Jetzt sitz ich hier schon wieder ewig und bin inzwischen blind für Schreibfehler o. ä. geworden. Das Seltsame ist vor allem, dass der Satz "Der GB-Eintrag wurde erfolgreich..." angezeigt wird, die Daten aber nicht eingetragen werden. Wahrscheinlich steckt irgendwo wieder ein kleiner Schreibfehler oder so den ich übersehen habe >_< Bitte euch trotzdem mir zu helfen

mfg
unlord
 
Ich gehe mal von einem mySQL-Fehler aus, da mySQL ein Problem mit dem Spaltennamen E-Mail, Date und Time hat. Setz die Spalten- und Tabellennamen alle in Backticks.
 
unlord hat gesagt.:
Das Seltsame ist vor allem, dass der Satz "Der GB-Eintrag wurde erfolgreich..." angezeigt wird, die Daten aber nicht eingetragen werden.
Is ja klar, mit
PHP:
if(trim($_POST["name"]) != "" AND trim($_POST["content"]) != "")
// Klammersetzung berichtigt ;)
frägst Du ja nicht ab, ob ein Eintrag erfolgt war.

Machs lieber so:
PHP:
$result = mysql_query($query);
if ($result){
   echo "DB-Eintrag erfolgreich"
}else{
   echo "Fehler:<br>".mysql_error();
   // das sagt Dir was an Deiner Query foul ist
}
 
da sollte ja auch gar nicht den Eintrag überprüfen, sondern nur ob was in Name und Eintrag eingetragen wurde...

@Oliver
jo thx das wars wohl (=

mfg
unlord
 
Zurück