Seite 1 von 1

Problem beim schreiben in die Datenbank

Verfasst: 22.04.2007 11:49
von Furanty
Ich bin dabei ein Newsscript zu schreiben. Allerdings gibt es Probleme wenn ich in die Datenbank schreiben will. Diese Datei wird von der news.php includet und dort muss isch der fehler befinden. Nur find ich ihn nicht, der rest klappt.

Code: Alles auswählen

<?php
	if(isset($_POST['submit']) AND "News Eintragen" == $_POST['submit']) {
			$sql = "INSERT INTO news
						(Title, Text, Category, Com-Topic, Date)
					VALUES
						('".$_POST['Title']."',
						'".$_POST['Text']."',
						'".$_POST['Category']."',
						'".$_POST['Com-topic']."',
						NOW())";
			mysql_query($sql);
			echo "	<p>Hinzugefügt</p>\n";
	} else {
		// Formular
	}
?>

Verfasst: 22.04.2007 12:44
von Miriam
Welcher Art sind denn die Probleme?

Und was ist das hier -->

Code: Alles auswählen

"News Eintragen" == $_POST['submit']
probier es anders herum:

Code: Alles auswählen

$_POST['submit'] == "News Eintragen"

Verfasst: 22.04.2007 12:50
von Pyramide
@Furanty: Wie genau sehen denn die "Probleme" aus? Wie sieht das erwartete Verhalten aus und was passiert stattdessen?

@Miriam: Und was genau bewirkt die Änderung? Wenn A==B, dann gilt doch auch B==A :roll:

Verfasst: 22.04.2007 13:27
von Miriam
Das stimmt. Ich hatte mich geirrt: Wir haben ja einen Vergleich und keine Zuweisung *ggg* ... Sieht aber besser aus so... Oder ? :lol:

Leider hat Furanty keine Fehlerbehandlung in sein /ihr Script eingebaut.

Verfasst: 22.04.2007 13:53
von Furanty
Der ist das die Daten nicht in die atenbnk geschrieben werden. Gleich komen mal die restlichen Teile des Scripts.

Verfasst: 22.04.2007 14:10
von Jan500
hi

ersetz mal
mysql_query($sql);
durch
$result = mysql_query($sql);
if (!$result) {
die('Fehler beim eintragen: ' . mysql_error());
}
und führe es erneut aus...

hast du mal geprüft ob die post daten überhaupt vorhanden sind? und ob überhaupt die if-bedingung == TRUE ist

pack mal vor dem
if(isset($_POST['submit']) AND "News Eintragen" == $_POST['submit'])

ein var_dump($_POST); und poste das ergebniss hier

Jan

Verfasst: 22.04.2007 14:25
von Furanty
Danke, im Formular stand name="Com-topic" und nicht Com-Topic...

Vielen Dank :oops:

Verfasst: 22.04.2007 14:43
von Jan500
btw, ich würde für bezeichnungen immer kleingeschriebenes nutzen udn wenn _ statt -
so minimiert man solche fehler ;)

gruß Jan