Anfänger Frage...

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

Anfänger Frage...

Postby Az » 13. January 2005 22:29

Ja, ich gestehe, ich bin blutiger Anfänger, aber trotzdem macht mich das rasend, dass das nicht funktioniert hier und wird mir ne schlaflose Nacht bereiten, wenn ich das heute nicht mehr gebacken kriege.
Also folgendes:
Im Moment versuche ich einfach nur über PHP, Daten in eine Tabelle einzufügen.
Datenbank und Tabelle bestehen schon, mysql_connect und mysql_select_db funktioniert... also:

"$insert ="INSERT INTO fonts_t1(PK Font, Fontname, Designer, Entstehungsjahr, Klasse, PK User)
VALUES (1,'Arial','Himself','1900', 6, 1)"
$results = mysql_query($insert)
or DIE (mysql_error()); "

Daraufhin krieg ich ne Fehlermeldung, ich hätte ne unerwartete Variable in Zeile 8, entspricht "$resuls = mysql_query($insert)"

Woran kann das denn liegen??? Ich kapiers nich!
Help!!!! Die Az
Az
 
Posts: 6
Joined: 13. January 2005 22:04

Postby Jan H. Krüger » 13. January 2005 22:38

Code: Select all
"$insert ="INSERT INTO fonts_t1(PK Font, Fontname, Designer, Entstehungsjahr, Klasse, PK User)
VALUES (1,'Arial','Himself','1900', 6, 1)"[b];[/b]


Hier fehlt ein Semikolon.
Jan H. Krüger
 
Posts: 152
Joined: 24. October 2004 19:42

aha

Postby Az » 13. January 2005 22:49

Wenn ich da ein Semikolon hinmache, sagt er ich hätte nen Syntax Fehler!???
Az
 
Posts: 6
Joined: 13. January 2005 22:04

Postby Wiedmann » 13. January 2005 23:10

"$insert = "INSERT INTO fonts_t1 (`PK Font`, `Fontname`, `Designer`, `Entstehungsjahr`, `Klasse`, `PK User`) VALUES (1, 'Arial', 'Himself', '1900', 6, 1)";
$results = mysql_query($insert) or die(mysql_error()); "

Bei diesm Code fallen schonmal die Hochkommas " am Anfang und Ende auf die hier falsch sind.

Das fehlende Semikolon ; wurde ja schon gesagt.

Die Spaltennamen würd ich auch in Backticks ` setzten.

Der Fehler scheint jedenfalls schon früher im Quellcode zu entstehen. Hast du da mehr davon? (Und setzt den Code im Post in "Code"-Tags --> gibts 'ne Taste dazu.)

Daraufhin krieg ich ne Fehlermeldung, ich hätte ne unerwartete Variable in Zeile 8,

So sah die Fehlermeldung bestimmt nicht aus...
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

schuldigung

Postby Az » 13. January 2005 23:15

Naja, wie gesagt, ich bin Anfänger und ich will hier sicherlich auch niemanden unnötig aufhalten.

Werde mal sehen, was passiert, wenn ich das mache.
Komplette Fehlermeldung:

Parse error: parse error, unexpected T_VARIABLE in G:\apachefriends\xampp\htdocs\A_files\TMPcvrhraa0g5.php on line 8

Die Hochkommas hab ich da hingesetzt, um den code deutlich vom Rest abzugrenzen. Die stehen nicht im Programm. Ganz so schlimm ist es dann doch nicht mit mir.
Az
 
Posts: 6
Joined: 13. January 2005 22:04

Postby Az » 13. January 2005 23:36

Also, wenn ich das alles einfüge dann bekomm ich folgende Fehlermeldung:
connection made
database selected
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 ''PK Font', 'Fontname', 'Designer', 'Entstehungsjahr', 'Klasse', 'PK User') ' at line 1

Dacht ich ja auch, dass der Fehler irgendwo anders sein muss. Aber alles was da sonst noch passiert ist die Verbindung zu MySQL, bestätigt mit "connection made" und das Database Select, dass auch bestätigt wird...
insofern... no idea
Mal abgesehen davon, befindet sich die in der Fehlermeldung angezeigte Syntax nicht in line 1... hm

der ganze code:
Code: Select all
<?php
$connect = mysql_connect ('localhost','root','buxdehude')
or die ('You have not been connected');
echo "connection made";
mysql_select_db('fonts_sd2')
or DIE (mysql_error());
echo "database selected";
$insert ="INSERT INTO fonts_t1('PK Font', 'Fontname', 'Designer', 'Entstehungsjahr', 'Klasse', 'PK User')
        VALUES (1,'Arial','Himself','1900', 6, 1)";
$results = mysql_query($insert)
or DIE (mysql_error());
?>
Az
 
Posts: 6
Joined: 13. January 2005 22:04

Postby Wiedmann » 13. January 2005 23:52

Mal abgesehen davon, befindet sich die in der Fehlermeldung angezeigte Syntax nicht in line 1... hm

Die Meldung kommt von MySQL und deshalb ist auch Zeile 1 von dem SQL-Kommando gemeint (nicht vom PHP-Script).
INSERT INTO fonts_t1('PK Font', 'Fontname', 'Designer', 'Entstehungsjahr', 'Klasse', 'PK User')
VALUES (1,'Arial','Himself','1900', 6, 1)

Wie gesagt... ich hab vorher von Backticks (`) geschrieben, nicht von Single Quotes (').
Code: Select all
INSERT INTO fonts_t1(`PK Font`, `Fontname`, `Designer`, `Entstehungsjahr`, `Klasse`, `PK User`)
VALUES (1, 'Arial', 'Himself', '1900', 6, 1)
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Az » 14. January 2005 00:00

Wooooooooooooohooooooooooooooo!!!! Es funktioniert! Vielen, vielen Dank!

Die Meldung kommt von MySQL und deshalb ist auch Zeile 1 von dem SQL-Kommando gemeint (nicht vom PHP-Script).


Wichtige Info, Danke
Az
Az
 
Posts: 6
Joined: 13. January 2005 22:04

Postby Wiedmann » 14. January 2005 00:32

Freut mich :-)

Irgendwie war's mir schon komisch bei den Spaltennamen mit Leerzeichen ohne diese Backticks... (war mir aber echt nicht sicher).

Auch wenn man die oft weglassen könnte, empfielt es sich immer diese um Datenbank-, Tabellen-, Spalten- und Alias-Namen zu machen. Schreibfaule werden früher oder später bestraft *g*

So gesehen solltest du die als auch bei fonts_t1 hinmachen --> `fonts_t1`
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Az » 14. January 2005 00:52

hehehe, ja ich werds mir merken! Danke nochmal vielmals für die Hilfe!
Naja... und was will man nach 24 h PHP und MySQL Intensiv Training schon erwarten...
Ich kann jetzt auf jeden Fall zufrieden schlafen gehen! Dann... Irgendwann...
thnx, die Az
Az
 
Posts: 6
Joined: 13. January 2005 22:04


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 12 guests