Tom: Select, eine Variable soll zwei bedingungen erfüllen

Beitrag lesen

Hello,

WHERE meine_ta.Link = '".htmlspecialchars($_SERVER['REQUEST_URI'])."'

  • Warum benutzt Du htmlspecialchars()? Du gibst doch nichts in den HTML-Kontext aus,
         sondern erhältst etwas über diesen Weg

Nein, ein HTML-Kontext liegt für die Daten in den EGPCS-Arrays nicht vor. Einige stammen von einem HTTP-Kontext, werden aber von PHP bereits so behandelt, dass sie quasi kontextlos sind. Höchstend die Magic Quotes in GPC-Arrays sind gegebenenfalls zu berücksichtigen.

Darum steht dort ja auch "über diesen Weg". Was auf diesem Weg [umgekehrte Richting von "zum Browser"] noch so alles passiert, habe ich doch gar nicht beschreiben.

In einem HTML-Formular word etwas eingegeben
der Browser verpackt die Parametger HTTP-konform und übergibt sie dem OS
das das OS überträgt diese per per Request über ein Netzwerk an ein anderes OS
Das andere OS übergibt den Request an ein Programm am passenden Port
Dieser verfährt pflichtgemäß [Protokoll und eigene Spezuifikationen] mit dem Request
und gibt diesen an einen Subprozess[*] weiter

und genau in diesem befinden wir uns nun. Das PHP-Runtime hat das übergebene Environment auszuwerten, aufzubereiten und an den Prozess für das Script weiterzureichen.

Der Request stammt also aus einem HTML-Kontext und ist hier nicht dafür gedacht, in einen solchen direkt wieder einzutreten. Vielmehr tritt er in einen "normalisierten" Kontext ein, in dem Daten eigentlich als "raw data" vorliegen sollten, was aber leider durch magic quotes nicht immer so ist.

[*] Im Sinne von "Antwort wird erwaret:  auch Prallelprozess / Dienst / Server / ...

Liebe Grüße aus Syburg bei Dortmund

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de