Hallo,
1. Wenn der Schlüssel von Array-Variablen ein String ist, muss er in Anführungszeichen stehen.
Statt
$_GET[confirm]
also unbedingt
$_GET['confirm']
u.s.w.
2. Du übernimmst offenbar GET-Variablen ungeprüft in die Query.
Das ist sehr gefährlich!
Benütze mysql_escape_string() und mach Dich schlau zu Sicherheit im allgemeinen und SQL injection im speziellen!
Da Du die GET-Variablen eh umschreibst, kannst Du gleich bei diesem Schritt mysql_escape_string verwenden. Statt
$name = $_GET[name];
also:
$name = mysql_escape_string($_GET['name']);
3. Ich würde mir zu Kontrollzwecken mal den Query-String anzeigen lassen, um zu sehen, was mysql_query() tatsächlich an die Datenbank schickt.
(Wie auch Frank vorgeschlagen hat.)
Also beispielsweise:
// Query-String zusammenbauen:
$query_eintrag="INSERT INTO artefakte (name,info,str,dex,int,aus,lck) VALUES ('$name','$info','$str','$dex','$intel','$aus','$lck')";
// Query abschicken:
mysql_query($query_eintrag);
// Allfällige Fehlermeldung anzeigen:
mysql_error();
// Query-String anzeigen:
echo "<p>Query-String: $query_eintrag</p>";
HTH, mfg
Thomas
P.S. Man wird Dir hier bestimmt noch empfehlen, statt den "veralteten" mysql_*-Funktionen lieber die "modernen" mysqli_*-Funktionen zu benutzen.