Mailinglisten-Archive |
Tobias Ratschiller schrieb: > > > In dem Zusammenhang stellt sich mir die Frage, wie ich sicher erfahre, > > ob eine globale Variable aus einem Cookie stammt oder aus einer normalen > > Get-Variablen. Mit $HTTP_COOKIE_VARS wäre das überprüfbar, aber mach mal > > folgendes > > > > www.domain.tld?$HTTP_COOKIE_VARS=nix > > und wech ist das Cookie-Array. > > Das führte in irgendeiner Version zum Absturz, wenn ich mich recht erinnere. > Das ist ein Bug. Diese Arrays sollten auch nicht von außen überschreibbar > sein, falls sie das sind, ist es ein Bug. Ändert aber nichts an der > Sinnhaftigkeit von $HTTP_[COOKIE|GET|POST|SERVER|STATE]_VARS, > variables_order, und register_globals (ok, über letzteres läßt sich > streiten). Es war in der Mail das "$" zuviel. www.domain.tld?HTTP_COOKIE_VARS=nix überschreibt mit tödlicher Sicherheit das Array. 1. "normal": http://test/_sessiontest/httpcookievars.php <?php SetCookie("testcookie", "identifier", 0); reset($HTTP_COOKIE_VARS); while (list ( $k,$v)=each ($HTTP_COOKIE_VARS)) {echo "<br>$k = $v";} Cookie wird gesetzt. Ergebnis: testcookie = identifier 2. "Hack-Version": http://test/_sessiontest/httpcookievars.php?HTTP_COOKIE_VARS=nix Cookie wird gesetzt. Ergebnis: Warning: Variable passed to reset() is not an array or object in d:\www\test\_sessiontest\httpcookievars.php on line 4 Warning: Variable passed to each() is not an array or object in d:\www\test\_sessiontest\httpcookievars.php on line 5 Wat nu? Bug reporten? mit freundlichen Grüßen, oK.
php::bar PHP Wiki - Listenarchive