Hallo,
$det = mysql_query("SELECT id, name, email, ort, date, old, map, waffe, motto, position, hardware FROM $tabelle WHERE $id=id");
1.) warum wird hier nicht mehr, so wie beim connect und DB-Select, ein allfälliger Fehler abgefangen? Und dann sollte im Fehlerfalle nicht nur die Meldung von Dir ausgegeben werden, sondern auch die System-Fehlermeldung, in diesem Falle also die Datenbankmeldung, warum das query nicht ausgeführt werden konnte. Nur so kannst Du feststellen, was am Statement falsch ist. Eventuell gibst Du auch einmal das Statement genau so aus, wie Du es zur Datenbank sendest, also mit aufgelösten Variableninhalten.
2.) wie wird $id mit dem CGI-Parameter befüllt, bzw. welchen Wert hat $id zum Zeitpunkt dieses Funktionsaufruf?
3.) üblicherweise schreibt man
select .... from Tabelle
where datenbankfeld=$variablenname
Du schreibst eher $variablenname=datenbankfeld.
Grüße
Klaus
PS.: Sinnvolle Fehlermeldungen sind die halbe Miete, diese dann auch im Fehlerfalle noch zu auszuwerten begleicht meist den Rest der Miete;-)