Moin,
Tja, da ist halt dann das Problem, daß ich davon abhängig bin, ob der Browser Javascript zuläßt, was eigentlich entgegen meiner Prinzipien ist.
Genau
POST Variablen werden doch im Header versandt, oder bin ich da falsch informiert?
Ja (zu "falsch informiert")
Eigentlich müßte es also möglich sein, per header() solche Variablen zu übergeben.
Nein
Bei HTTP sendet der Browser an den Server eine Anfrage. Die enthält eine Requestzeile (z.b. GET /blabla.php?ha=hi HTTP/1.1 oder POST /huhu.php HTTP/1.1) und eine Menge Header die unter anderem den User-Agent, den Namen des Servers von dem die Informationen abgefragt werden, eventuelle Cookies und all so was enthalten. Danach kann dann optional noch ein Body kommen. Bei GET werden alle zu übergebenden Paramter hinter den URL angehängt, bei POST sind sie im Body enthalten.
Der Server sendet dann eine Antwort den Browser zurück. Die enthält eine Responsezeile (z.b. HTTP/1.1 200 OK oder HTTP/1.1 404 Not found) sowie eine ganze Reihe von Headern. Da drin steht unter anderem die Version des Webservers, der Mime-Typ des gelieferten Bodys, eventuell zu setzende Cookies und all sowas. Unter anderem sind da auch die Header bei die du mit header() sendest. Danach kommt im Body die angefragte Datei.
Fazit: Ohne irgendwas am Client zu tricksen kannst du ihn nicht dazu bringen Variablen per POST zu schicken.
Alternativ möchtest du vielleicht die nötigen Sachen in einer Session speichern? Du merkst dir einfach das was du sonst hättest per POST schicken wollen in eine Sessionvariable oder ein Array das in der Session registriert ist und weist den Daten dort einen (kurzen) Identifier zu, etwa eine durchlaufende Variable. Deine Links brauchen dann nur noch die Session-ID und die die jeweilige Nummer enthalten. Das aufgerufene Skript kann sich dann die Daten wieder aus der Session herausholen.
--
Henryk Plötz
Grüße aus Berlin