Daten in Datenbank Speichern
Kyell
- datenbank
Hallo,
ich weiß ich habe eine ziemlichen Anfänger Frage aber ich komme einfach nicht weiter.
Ich möchte einfach nur in eine MySQL Datenbank über PHP Speichern es klappt einfach nicht.
Hier einmal die PHP Datei:
<?php
$name = Master;
include("dbverbindung.php");
$eintrag = mysql_query("INSERT INTO profil (name,) VALUES ('$name',)");
if($eintrag == true) echo "Eintrag war erfolgreich";
else echo "Fehler beim Speichern";
?>
Mit wird immer nur Fehler beim Speichern angezeigt, die Datenbankverbindung geht auf jeden Fall, das habe ich schon getestet.
Ich habe alles so gemacht wie überall beschrieben aber ich krich es einfach nicht hin.
Mit freundlichen Grüßen Kyell
Hi!
$eintrag = mysql_query("INSERT INTO profil (name,) VALUES ('$name',)");
Mit wird immer nur Fehler beim Speichern angezeigt, die Datenbankverbindung geht auf jeden Fall, das habe ich schon getestet.
Ich habe alles so gemacht wie überall beschrieben aber ich krich es einfach nicht hin.
Wo ist denn überall beschrieben, dass da Kommas vor den schließenden Klammer zu stehen haben? Und wo ist denn nicht beschrieben, dass man im Allgemeinen einen Fehlerbehandlung einbauen soll und im Speziellen sich den genauen Wortlaut des Fehlers mit mysql_error() holen kann? Und wenn du von Maßnahmen gegen SQL-Injection auch noch nichts gelesen hast, solltest du dir ein anderes "überall" zulegen und mal den Kontextwechsel-Artikel lesen.
Lo!
Zu Fehlerbehandlung kann ich nur sagen das ich sie so in ein paar Skripten gesehen habe und sie Test weise übernommen habe um wenigstens zu wissen wo etwa der Fehler liegt.
MFG Kyell
Hi!
Zu Fehlerbehandlung kann ich nur sagen das ich sie so in ein paar Skripten gesehen habe und sie Test weise übernommen habe um wenigstens zu wissen wo etwa der Fehler liegt.
Ah ok, da war ich etwas zu unaufmerksam. Eine Reagieren auf Fehler hast du ja eingebaut, nur solltest du im Fehlerfall dann auch nachsehen, was für ein Fehler aufgetreten ist. mysql_query() sagt über den Rückgabewert false, nur dass einer da ist. Welcher das genau ist, liefert mysql_error(). Während der Entwicklung kann man sich den Text einfach so anzeigen lassen. Für das fertige Programm ist das nicht mehr sinnvoll, denn Besucher können und sollen mit dem genauen Wortlaut nichts anfangen. Da sollte man sich überlegen, wie nur der Admin benachrichtigt wird.
Also mysql_error() wird dir einen Syntaxfehler (zunächst) beim ersten Komma melden. Lass dir die Meldung ruhig mal anzeigen, auch wenn du nun schon weißt, was das Problem ist.
Lo!
Da ich mich da nicht so aus kenne weiß ich nicht ob ich es richtig gemacht habe, au jeden fall wird mir jetzt "Duplicate entry '0' for key 1" angezeigt.
Ich habe die kommers weg gemacht aber es geht immer noch nicht.
Ich weis nicht was ich jetzt schon wieder falsch gemacht habe aber gehn tut es noch nicht.
MFG Kyell
Hi,
au jeden fall wird mir jetzt "Duplicate entry '0' for key 1" angezeigt.
Ich weis nicht was ich jetzt schon wieder falsch gemacht habe
Ist doch deutlich aus der Meldung ersichtlich - du versuchst einen Datensatz einzufügen mit einem Wert für die erste Schlüsselspalte deiner Tabelle, den es bereits gibt, was dieser Schlüssel aber nicht erlaubt.
MfG ChrisB
Dann erst mal danke für die Hilfe.
MFG Kyell