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

Problem mit Anlegen von Daten in MySQL Tabelle

  • Ersteller Ersteller Plankton
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
P

Plankton

Guest
Guten Abend alle zusammen. Ich habe ein großes Problem:
Ich schreibe gerade meine erste richtige webanwendung, ein Warensystem.
Es besteht bis jetzt aus zwei dateien:

index.php
PHP:
<html>
<head>
<title>Warensystem 1.0 | Pre-Alpha 1 | Build 1</title>
</head>
<body>
<h1>Willkommen bei "Warensystem 1.0</h1>
<h2>Momentan verfügbare Waren:</h2>

<div id="warenanzeige">
<?php

//beginn der Variabelnsetzung
mysql_connect("localhost", "root", "passwort");
mysql_select_db("warensystem");
$sql = "SELECT * FROM waren";
$result = mysql_query($sql);

// ende der Variabelnsetzung

//WARENANZEIGE

// Beginn des Tabellenkopfes

echo "<table border='1' cellspacing='0'>\n";
echo "<tr><th>Produktnummer</th><th>Produktname</th><th>Preis</th>";

//Ende des Tabellenkopfes

//Schleife und datensatz
while ($row = mysql_fetch_assoc($result)) {
	echo "<tr>"; //Erzeuge neue Zeile
	
		//Anfang foreach-Abschnitt
		foreach ($row as $key => $waren) {
		echo "<td>$waren&nbsp;</td>";
		} //Ende des foreach-Abschnitts
	echo "</tr>"; // Beende neue Zeile
	}	//Beende Schleife
echo "</table>"; // ENDE DER WARENANZEIGE
mysql_close();
?>


</div>

<div>

<p>
<a href="eingabe.php">Zur Administration</a>
</p>
</div>

</body>
</html>

eingabe.php
PHP:
<html>
<head>
<title>formular</title>
</head>
<body>
<h1>Hinzuf&uuml;gen neuer Waren:</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method ="post">
	Produktnummer: <input type="text" name="nummer"><br />
	Produktname: <input type="text" name="name"><br />
	Preis: <input type="text" name="preis"><br />
<input type="submit" value="Hinzufügen von Ware" name="submit">
</form>
<?php

if (!empty($_POST["submit"])) {
@mysql_connect("localhost", "root", "passwort") or die ("Verbindung zum Warensystem nicht möglich");
@mysql_select_db("warensystem") or die ("Zugriff auf Daten nicht möglich");

$sql="INSERT INTO waren " .
"(Nummer, Name, ".
"Preis) VALUES ('', '$_POST[Nummer]', '$_POST[Name]', " .
"'$_POST[Preis]')";

if (mysql_query($sql)) {
	echo "<p>Hinzufügen von Waren in Datenbank erfolgreich!</p>";
	}
else {
	echo "<p>Hinzufügen von Waren in Datenbank fehlgeschlagen, versuchen sie er erneut!</p>";
}
mysql_close();
}
?>
<p>
<a href="index.php">Waren abrufen</a>
</p>

</body>
</html>

Die Datenbank ist angelegt, die Tabelle ebenfalls. Wenn ich allerdings über eingabe.php Neue Waren eintragen will, so kommt die Meldung (die ich selber erstellt habe): "Hinzufügen von Waren in Datenbank fehlgeschlagen, versuchen sie er erneut!".

Hat jemand eien Idee, woran das liegt? Ich verwende XAMPP 1.5.2.

mfg Plankton
 
--> in der ersten if-anweisung wurde die klammer net zugemacht
--> am ende der zweiten ist eine klammer zu viel
--> innerhalb einer if-aufforderung kann nicht ein zweites if stehen
--> wenn, dann nur elseif
--> $_POST-arrays großgeschrieben
--> feldernamen kleingeschrieben

Nils aka XraYSoLo
 
in der ersten if-anweisung wurde die klammer net zugemacht
wenn ich die erste in eingabe.php schließe, hagelt es eine Fehlermeldung. alles andere hat maverick7bm mir über ICQ schon gezeigt. Dafür tritt ein neues Probelm auf: er Meldet zwar eine erfolgreiche Eingabe, aber anzeigen tut er nur leere
Tabellenfelder in der index.php.
mfg Plankton

EDIT: Hat sich erledigt, maverick7bm hat mir bei der Beseitigung aller Fehler geholfen
 
Zuletzt bearbeitet von einem Moderator:
Status
Für weitere Antworten geschlossen.
Zurück
Oben