Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Neuer Datenbankeintrag wird nicht in die MYSQL DB übernommen.

Mitglied: Cayman

Cayman (Level 1) - Jetzt verbinden

20.02.2006, aktualisiert 01.04.2006, 5229 Aufrufe, 16 Kommentare

Ich mal wieder,,,,

weiß Jemand warum die Werte des folgenden PHP Codes nicht in die DB übernommen werden?

Ich habe ein HTML Eingabeformular bebastelt das alle unten genannten Werte abfragt.

Mein PHP Code wie unten abgebildet holt sich alles via POST und sollte eigentlich wie unten zu sehen die Werte in die Tabelle 'kunden' eintragen.

Was ich bekomme nachdem ich einen neuen Kunden anlegen will ist zwar die ECHO Anweisung mit dem OK aber der Kunde ist definitiv nicht in der DB wenn ich mir diese anschaue via PHPMYADMIN.

Any ideas?


Besten Dank
Marc

Anbei meine SQL Tabelle:
<img src='/images/articles/330055dc2fb02dc5cafac910df342f06-sql.jpg' align='default' hspace='0' vspace='0' border='0'>


<?php

$firmenname = $_POST["firmenname"];
$geschaeftsfuehrer = $_POST["geschaeftsfuehrer"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$ort = $_POST["ort"];
$land = $_POST["land"];
$telefon = $_POST["telefon"];
$handy = $_POST["handy"];
$fax = $_POST["fax"];
$email = $_POST["email"];
$handelsregister = $_POST["handeslregister"];
$steuernummer = $_POST["steuernummer"];
$website = $_POST["website"];
$kundennummer = $_POST["kundennummer"];

$db = mysql_connect("localhost","root","test123");
mysql_select_db("mycompany");

$neu ="INSERT INTO kunden VALUES

('$firmenname','$geschaeftsfuehrer','$strasse','$plz','$ort','$land','$telefon','$handy','$fax','$email','$handelsregister','$steuernummer','$website','$kundennummer)";

mysql_query($neu);

mysql_close($db);

echo "Der Kunde wurde erfolgreich angelegt."

?>
Mitglied: Cayman
20.02.2006 um 16:13 Uhr
P.S Die Datanbank und die Tabelle existieren und die Felder stimmen ebenfalls überein.
Bitte warten ..
Mitglied: Dani
20.02.2006 um 16:15 Uhr
Hi,
du musst noch die Spaltenname angeben!!!


Beispiel von mir:
$sql="INSERT INTO home_news (id, titel, text, link, date) VALUES ('', '$ueber','$text' ,'$link', NOW())";
mysql_query($sql);
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 16:23 Uhr
Hallo!

Habe ich eben getestet aber weiterhin kein neuer Kunde in meiner DB.

Code wie folgt:

<?php

$firmenname = $_POST["firmenname"];
$geschaeftsfuehrer = $_POST["geschaeftsfuehrer"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$ort = $_POST["ort"];
$land = $_POST["land"];
$telefon = $_POST["telefon"];
$handy = $_POST["handy"];
$fax = $_POST["fax"];
$email = $_POST["email"];
$handelsregister = $_POST["handeslregister"];
$steuernummer = $_POST["steuernummer"];
$website = $_POST["website"];
$kundennummer = $_POST["kundennummer"];

$db = mysql_connect("localhost","root","test123");
mysql_select_db("mycompany");

$neu ="INSERT INTO kunden
(Firmenname, Geschaeftsfuehrer, Strasse, PLZ, Ort, Land, Telefon, Handy, Fax, E-Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer)
VALUES
('$firmenname','$geschaeftsfuehrer','$strasse','$plz','$ort','$land','$telefon','$handy','$fax','$email','$handelsregister','$steuernummer','$website','$kundennummer)";

mysql_query($neu);

mysql_close($db);

echo "Der Kunde wurde erfolgreich angelegt."

?>

Noch andere Ideen?

Besten Dank
Bitte warten ..
Mitglied: Dani
20.02.2006 um 16:45 Uhr
Mach einfach mal noch echo $sql. Kopier den Code in phpMyAdmin und führ dann mal aus. Falls dann ein Fehler kommt, bitte posten.

Gruß
Dani
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 16:52 Uhr
Sorry bin noch kein Prof.

Meinst Du einfach nach meiner letzten ECHO Anweisung (echo "Der Kunde....") noch

echo $sql

eingeben oder?

Und wie gebe ich den Code in PHPMYADMIN ein? Sofern ich den einfach reinkopiere bekomme ich doch mit Sicherheit eine FM da die Variablen noch nicht vorhanden sind....
Bitte warten ..
Mitglied: Dani
20.02.2006 um 16:56 Uhr
Genau, einfach nachdem letzten echo - Ausgabe. Dann den ausgegebenen Befehl kopieren. phpMyadmin auf machen und in die Tabelle kunden gehen. Dann gibst oben sowas wie SQL. Dort den Code einfügen und auf OK klicken. Nun müsste korrekterweiße der Datensatz eingefügt werden.
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 16:59 Uhr
Erledigt.

Ich bekomme folgende FM über PHPMYADMIN:


Es scheint einen Fehler in Ihrer MySQL-Abfrage zu geben. Die MySQL-Fehlerausgabe, falls vorhanden, kann Ihnen auch bei der Fehleranalyse helfen.

ERROR: Nicht geschlossene Anführungszeichen @ 308
STR: '
SQL: INSERT INTO kunden (Firmenname, Geschaeftsfuehrer, Strasse, PLZ, Ort, Land, Telefon, Handy, Fax, E-Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer) VALUES ('BCS','Michael Bernhardt','AltHausen 34','63345','Frankfurt','Deutschland','0614435','663449783','54353','bfv@gmx.com','','545','5245','543)

SQL-Befehl:

INSERT INTO kunden (Firmenname, Geschaeftsfuehrer, Strasse, PLZ, Ort, Land, Telefon, Handy, Fax, E-Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer) VALUES ('BCS','Michael Bernhardt','AltHausen 34','63345','Frankfurt','Deutschland','0614435','663449783','54353','bfv@gmx.com','','545','5245','543)
MySQL meldet:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer) VALUES ('BCS'' at line 1
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 17:04 Uhr
Werde aus der FM nicht schlau abgesehen davon das bei den Values zwischen E-Mail und Handelsregisternummer kein Wert steht.
Bitte warten ..
Mitglied: Dani
20.02.2006 um 17:07 Uhr
Probier mal das hier:


INSERT INTO kunden (Firmenname, Geschaeftsfuehrer, Strasse, PLZ, Ort, Land, Telefon, Handy, Fax, E-Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer) VALUES ('BCS','Michael Bernhardt','AltHausen 34','63345','Frankfurt','Deutschland','0614435','663449783','54353','bfv@gmx.com','','545','5245','543');
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 17:10 Uhr
Leider kein Glück gehabt.

MySQL meldet:

SQL-Befehl:

INSERT INTO kunden( Firmenname, Geschaeftsfuehrer, Strasse, PLZ, Ort, Land, Telefon, Handy, Fax, E - Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer )
VALUES (

'BCS', 'Michael Bernhardt', 'AltHausen 34', '63345', 'Frankfurt', 'Deutschland', '0614435', '663449783', '54353', 'bfv@gmx.com', '', '545', '5245', '543'
)
MySQL meldet:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-Mail, Handelsregisternummer, Steuernummer, Website, Kundennummer) VALUES ('BCS'' at line 1
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 17:13 Uhr
Was ich nicht verstehe, was vielleicht auch das Problem ist...

Folgende doppelte Anführungszeichen sollen doch bedeuten das nichts eingegeben wurde korrekt?

'bfv@gmx.com', '', '545'

Zwischen der E-Mail Adresse und der 545.

Witzig ist nur das ich alle Felder ausgefüllt habe und ich sehe beim Eingabeformular das das Feld E-Mail eine andere Farbe hat als der Rest..... ?
Bitte warten ..
Mitglied: Dani
20.02.2006 um 17:14 Uhr
Du musst aus dem Feld "E - Mail" -> email machen!!!

INSERT INTO kunden(Firmenname, Geschaeftsfuehrer, Strasse, PLZ, Ort, Land, Telefon, Handy, Fax, email, Handelsregisternummer, Steuernummer, Website, Kundennummer)
VALUES ('BCS', 'Michael Bernhardt', 'AltHausen 34', '63345', 'Frankfurt', 'Deutschland', '0614435', '663449783', '54353', 'bfv@gmx.com', NULL, '545', '5245', '543');
Bitte warten ..
Mitglied: Cayman
20.02.2006 um 17:21 Uhr
ALLES KLAR!

Das war das Problem. Offensichtlich kommt mySQL nicht mit Feldbezeichnungen inclusive Minuszeichen klar. Nachdem ich das Feld umbenannte in EMail und den Code anpasste klappt es jetzt.

Besten Dank Dani für Deine Zeit!!

Gruss
Marc
Bitte warten ..
Mitglied: Dani
20.02.2006 um 17:25 Uhr
Kleine Denkanregung. Spaltennamen immer klein. Nie Sonderzeichen sondern nur buchstaben und zahlen.

Viel Spaß!!
Gruß
Dani
Bitte warten ..
Mitglied: Biber
20.02.2006 um 17:28 Uhr
..Ergänzung zu Dani:
$handelsregister = $_POST["handeslregister"]; --->sieht nach Tippfehler aus

und in der INSERT INTO-Anweisung heißt es falsch handelsregisternummer.

Und Feld "E - Mail" und auch "E-Mail" sind sicherlich falsch - Alle Werte in der ersten Klammer müssen vom Namen her mit den tatsächlichen Feldnamen identisch sein und in Reihenfolgen und Anzahl mit denen der VALUES-Klammer korrespondieren.

Gruß Biber
Bitte warten ..
Mitglied: 25768
01.04.2006 um 15:42 Uhr
Hallo,

auch wenn ich selbst kleingeschriebene zusammenhängende Colums benutze, möchte ich der Vollständigkeit halber noch hinzufügen, dass das Feld
E - Mail
kein Problem ist, insofern man es als String schreibt :

'E - Mail'
`E - Mail`
"E - Mail" (aufpassen auf ANSI_QUOTES)

http://dev.mysql.com/doc/refman/5.0/en/legal-names.html

GruÃ?
Andi
Bitte warten ..
Ähnliche Inhalte
Datenbanken

Schnelle Entwicklung für eine PHP, MySQL-DB?

gelöst Frage von 1410640014Datenbanken2 Kommentare

Hallo, würde mir gerne ein paar Anregungen holen, ob es für PHP und MySQL so ne Art Formular- / ...

Datenbanken

MySQL Slave DB größer als die vom Master

Frage von ckedingDatenbanken

Hallo miteinander, ich habe derzeit ein Problem welches ich nicht nachvollziehen kann. Ich habe einen MySQL Master und einen ...

Verschlüsselung & Zertifikate

Zugriff auf mySQL-DB mit ODBC und SSL

Frage von Titan24Verschlüsselung & Zertifikate2 Kommentare

Ich möchte für einen Kunden sicher Daten von einer mySQL-DB via ODBC nur lesend abgreifen können. Da die Daten ...

Webbrowser

Daten in entfernte Mysql DB schreiben

gelöst Frage von nullacht15Webbrowser3 Kommentare

Hi, ich beschäftige mich derzeit mit einem System, bestehend aus einigen Sensoren, welches Daten regelmäßig ausliest und diese in ...

Neue Wissensbeiträge
Server-Hardware

Lösung für Ersatz eines defekter Raid-Controllers

Anleitung von wellknown vor 8 StundenServer-Hardware1 Kommentar

Hallo, da ich nichts gefunden habe und selbst eine Lösung brauchte, hier eine kleine Anleitung für alle die vor ...

Windows 10

Kumuative Updates für .NET Framework kommen für Windows 10 V1809

Information von kgborn vor 13 StundenWindows 10

Microsoft hat das Ganze im Beitrag Announcing Cumulative Updates for .NET Framework for Windows 10 October 2018 Update vorgestellt. ...

Sicherheit
Neue IT-Administrator Ausgabe - Endpoint Security
Information von Frank vor 14 StundenSicherheit

Die Endgeräte in Unternehmen stellen das wohl größte Einfallstor für Angreifer dar. Ein geöffneter, infizierter E-Mail-Anhang oder der Besuch ...

Windows Tools

Windows 10 BitLocker Laufwerkverschlüsselung ohne TPM-Chip

Anleitung von Frank vor 14 StundenWindows Tools4 Kommentare

Diese Anleitung zeigt, wie man die Windows BitLocker Laufwerkverschlüsselung ohne TPM-Chip Schritt für Schritt aktiviert. Zwar haben viele Laptops ...

Heiß diskutierte Inhalte
Hyper-V
Windows Serer 2016 Standard virtualisieren
gelöst Frage von fritte87Hyper-V33 Kommentare

Hallo zusammen, ich muss für eine kleine Firma ein entsprechendes neues kleines Konzept bauen. Ich habe einen Server Standard ...

Windows Server
Kann DNS-Einträge nicht finden
gelöst Frage von BPeterWindows Server19 Kommentare

Hallo, wenn ich folgenden Befehl absetze, bekomme ich eine Liste zurück mit allen Einträgen der DNS-Zone. Wenn ich aber ...

Voice over IP
Umstellung Anlagenanschluss ISDN auf IP - Welcher Router?
Frage von ToniSchmidtVoice over IP12 Kommentare

Hallo zusammen, zum Ende des Jahres werden unsere geliebten ISDN Anlagenanschlüsse zwangsweise auf IP Anschlüsse umgestellt. Wir betreiben die ...

Firewall
Externer Zugriff auf Webserver
Frage von KingLouieFirewall12 Kommentare

Hallo zusammen, ich habe folgendes Problem: Ein Kollege muss gelegentlich auf einen Webserver zugreiffen, sowohl von intern als auch ...