INSERT INTO erzeugt 404 Fehler - Das kann doch gar nicht sein

Odomanie

Mitglied
Hallo zusammen :)

ich habe das Problem, dass eine SQL INSERT INTO Funktion, sofern man Werte in die 3 input Felder schreibt und den Submit-Button klickt, ein 404 erzeugt wird und zusätzlich trägt das skript keinen neuen eintrag in die datenbank ein.

wenn man hingegen die 3 felder leer läßt und nur den submit button an klickt kommt kein 404-fehler und es wird ein leerer neuer eintrag in die db geschrieben.

Die Tabelle hat mehr als nur die 3 Spalten. Die hier verwendeten Spalten stehen an der 4'ten, 5'ten, 6'ten Stelle in der Tabelle. Nur falls es eine Rolle spielt?!

ich würde mich riesig freuen, wenn mir jemand einen tipp geben kann, woran das liegen könnte. Dankeschön :)

Der PHP-Teil steht oberhalb des HTML-Teils
PHP:
<?php

     $mysqlhost="x";
     $mysqluser="x"; 
     $mysqlpwd="x";
     $mysqldb="x"; 

$connection = mysql_connect($mysqlhost, $mysqluser, $mysqlpwd) or die("Verbindungsversuch fehlgeschlagen.");
mysql_select_db($mysqldb, $connection) or die("Konnte die Datenbank nicht waehlen.");


if(isset($_POST["speichern"]))
{
    $name = $_POST['name'];
    $vorname = $_POST['vorname'];
    $anrede = $_POST['anrede'];

 $eintrag = "INSERT INTO `tabelle` (name, vorname, anrede) VALUES ('$name','$vorname','$anrede')";

 echo "Eintrag erfolgreich.";
 mysql_query($eintrag) or die("Eintrag fehlgeschlagen.");

 } else {
    
}



mysql_close($connection);

?>


Und hier der HTML Teil:
HTML:
<form action="http://sub.domain.de/verzeichnis/" method="post">
<input type="text" name="name" /><br>
<input type="text" name="vorname" /><br>
<input type="text" name="anrede" /><br>
<input type="submit" name="speichern" value="Eintrag speichern" />
</form>
 
Zuletzt bearbeitet:
Der 404 sollte daher kommen, daß du bei der action keine Datei, sondern nur ein Verzeichnis angegeben hast. Am einfachsten ist es immer, wenn du den form-Tag so schreibst:
HTML:
<form id="FormName" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Damit ist garantiert, daß das Formular die eigene Datei wieder aufruft. Dann brauchst du auch nach einer Datenprüfung durch PHP nicht großartig rumspringen, falls ein Eingabefehler auftritt.
 
Zuletzt bearbeitet:
Danke für die Hilfe, jedoch lag es wohl nicht daran. Der 404-Fehler bleibt leider. Woran könnte es noch liegen? Danke für eure Hilfe!


EDIT: Ich habe es geschafft! Es lag an dem Ausdruck

HTML:
name="name"

Habe es wie folgt geändert:

HTML:
name="nachname"
 
Zuletzt bearbeitet:
Zurück