Låt oss säga att jag har kanske 10 olika formulär på en sida, alla med olika antal variabler att skicka. All data från dessa forumlär skall sedan, oberoende på antal satta varibaler, tas emot av en funktion.
Sedan skall funktionen kolla _ALLA_ satta variabler som skickats, namnen vet vi inte, utan allt som kommer från $HTTP_POST_VARS skall gås igenom med htmlspecialchars().
Det går inte, då måste du ha ett gigantiskt formulär. Endast den data i nuvarande formulär skickas, så det är omöjligt att ta emot från de andra formulären.
while ( list ( $nyckel, $värde ) = each ( $HTTP_POST_VARS ) ) { // Alternativt $_POST
// I $nyckel hamnar fält-namnet
// I $värde hamnar dess värde
$värde = htmlspecialchars ( $värde );
}
Hur man löser så att man vet från vilket formulär som det skickades ifrån vet jag inte, jag känner på mig att det inte går. Du kan ju alltid lägga in värdet i ett hidden-field i varje formulär.
Löste det nu själv, på ett i mitt tycke, ännu bättre sätt, som jag tror funkar...
while ($each_var = each($HTTP_POST_VARS))
{
$res = htmlspecialchars($each_var[1]);
}
MEN, istället upptäckte jag att htmlspecialchars() inte fungerar som det skall. Enligt manualen skall både ' och " göras om till & #039; respektive & quot;, men jag får istället /' och /". Vad kan detta bero på?
[r] stavfel
[Redigerat av oelbal den 12 jan 2002]
142 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe