Avatar billede ullesan Nybegynder
17. januar 2002 - 15:36 Der er 21 kommentarer og
1 løsning

PHP 4.1.x

fra php 4.1.x er variablers værdi \"hentning\" blevet lavet om, sådan at hvis man sender værdier gennem POST så skal man bruge $_POST[\"variabel_navn\"] til at hente dets værdi...

Kunne man så ikke lave et funktion som tjekkede om de forskellige variabler var sendt gennem et POST/GET/COOKIE/SESSION og derefter lave dem om til $variabel_navn format ( ligesom før ), så man slipper for at skulle skrive $_POST[\"variabel_navn\"]???

se eventuelt http://dk.php.net/release_4_1_0.php
Avatar billede killifish Nybegynder
17. januar 2002 - 15:38 #1
Sæt register globals til yes (eller true eller whatever) i php.ini
Avatar billede ullesan Nybegynder
17. januar 2002 - 15:40 #2
det har jeg ikke mulighed da jeg ikke har adgang til php.ini filen...
Avatar billede killifish Nybegynder
17. januar 2002 - 15:44 #3
Tough luck. Skriv til dit webhotel og spørg om de vil slå det til.

Dog er register globals slået til per default så jeg tvivler på at de vil gøre det for dig.
Avatar billede ullesan Nybegynder
17. januar 2002 - 15:46 #4
det er nemmerlig problemet... det har hvad jeg forstået fra det ovennævnte link også noget at gøre med sikkerhed!
Avatar billede killifish Nybegynder
17. januar 2002 - 15:52 #5
Du kunne jo bare hente værdierne ind

$var = $_POST[\"var\"];

evt. i en fil du inkluderer på alle sider
Avatar billede myplacedk Nybegynder
17. januar 2002 - 15:55 #6
register_globals kan også slås til og fra i en .htaccess-fil:
php_value register_globals on

Jeg vil dog anbefale at skrive PHP\'en, så det ikke er nødvendigt.
Avatar billede ullesan Nybegynder
17. januar 2002 - 15:59 #7
killifish >> det er også den måde jeg gør det på, men det er lidt træls at skulle skrive $_POST[\"... hele tiden - det er derfor jeg spurgte om der var/kunne laves et funktion som hentede variablernes navne ind og lavede dem om ligesom du selv har skrevet
Avatar billede myplacedk Nybegynder
17. januar 2002 - 16:02 #8
ullesan > Første gang du skal bruge en variablen på en side, så henter du dem ind som killifish viser. På den måde er det kun én gang pr. variabel op til én gang pr. side.
Det med register_globals (eller funktioner med ca. samme funktionalitet) er noget værre noget. Det er ikke uden grund, at det snart bliver slået fra pr. default.
Avatar billede razor Nybegynder
17. januar 2002 - 16:03 #9
ullesan - hvorfor i alverden vil du nu mixe dem sammen igen, nu hvor de er så fint sorteret?
Avatar billede ullesan Nybegynder
17. januar 2002 - 16:09 #10
razor >> grunden til at jeg vil det, er at jeg  personligt syntes det er nemmere at skrive $variabel_navn istedet for $_POST[\"variabel_navn\"]
Avatar billede ullesan Nybegynder
17. januar 2002 - 16:17 #11
OK... Har selv fundet frem til en løsning, som er taget fra PHP manualen... Der skal dog laves lidt om på den

echo \"Values submitted via POST method:<br>\";
reset ($HTTP_POST_VARS);
while (list ($key, $val) = each ($HTTP_POST_VARS)) {
    echo \"$key => $val<br>\";
}

ellers \"tak\" for hjælpen i andre!!
Avatar billede delwin Nybegynder
17. januar 2002 - 16:20 #12
gør sådan her i toppen af dit dokument..


foreach ($_POST as $key => $value) {
    $$key    = $value;
}

echo $variabel_navn;
Avatar billede delwin Nybegynder
17. januar 2002 - 16:27 #13
ehh
Avatar billede myplacedk Nybegynder
17. januar 2002 - 16:28 #14
Æh... Bare fordi du finder noget der næsten virker, så er vi andres løsninger ligegyldige?
Det er sgu da ikke fedt at sidde og slå op i manualen og hvad ved jeg, og så bare få en \"afvist\" smækket i hovedet, fordi du selv fandt ud af noget andet.

Måske du skulle vente en time inden du poster dit spørgsmål næste gang. Denne gang fandt du jo en selv en løsningen inden for en time.
Avatar billede novellenet.dk Nybegynder
17. januar 2002 - 16:30 #15
Kunne man ikke bruge:
<?
extract($HTTP_POST_VARS);
?>
???
Avatar billede ullesan Nybegynder
17. januar 2002 - 16:34 #16
ehm ja... sådan noget sker vel! Der er jo ikke noget ved at man bare spørger et spørgsmål og forventer et svar uden at man selv også prøver på at løse den! Min mening i hvert fald...

Men hvis du ivrigt insisterer ( myplacedk ) at få point, så sig mig hvor meget af det førhenværende afsatte 30 point du vil have ( gælder også for jer andre )... Det skal da ikke komme an på det!
Avatar billede delwin Nybegynder
17. januar 2002 - 16:35 #17
bare lige for en ordens skyld.. i mit script..

foreach ($_POST as $key => $value) {
    $$key    = $value;
}

echo $variabel_navn;

det er ikke en fejl at det i anden linie starter med 2 $ tegn.. det laver en variabel der hedder inholdet af sig selv..

altså hvis $key indeholder \"volvo\" og man skrev $$key = \"SVENSKER\"; ville man få en variabel ved navn $volvo der indeholder \"SVENSKER\"
Avatar billede myplacedk Nybegynder
17. januar 2002 - 16:37 #18
> Der er jo ikke noget ved at man bare spørger et spørgsmål og forventer et svar uden at man selv også prøver på at løse den!

Der er jo ikke noget ved at man bare spørger et spørgsmål uden selv at have forsøgt at finde svaret først.

Eller sagt på en anden måde: Spørg først, når du giver op. Du spiller vores tid.

Pointene er ligegyldigt, det er det hårde ord \"Afvist\" jeg har et problem med. Og så det, at ens hjælp (uanset hvor god den er) er ligegyldig, bare fordi du lige finder noget tilfældigt makværk der virker.
Avatar billede ullesan Nybegynder
17. januar 2002 - 16:42 #19
Hmmm.... Det eneste jeg gjorde var at markere mit navn og klikke på \"Acceptere\"... At der så kom til at stå afvist ved jer andres navne, vidste jeg så ikke så meget til - idet at jeg meget sjældent giver pointene tilbage til mig selv og kunne derved ikke huske det at det foregik på den måde!

Det var ikke meningen at jeg skulle lyde som om jeg var respektløs og ikke værdsættede jer andres svar!! OVERHOVEDET IKKE!
Avatar billede ullesan Nybegynder
17. januar 2002 - 16:46 #20
delwin >> takker 4 hjælpen ( SAMT I ANDRES )... Det med $$ ( dobbelt ) kendte jeg godt :-)
Avatar billede myplacedk Nybegynder
17. januar 2002 - 16:48 #21
Jeg stopper her, jeg har sagt hvad jeg vil sige, og der er ingen grund til at gøre en diskussion ud af det.
Avatar billede ullesan Nybegynder
17. januar 2002 - 16:55 #22
som du vil myplacedk... har heller ikke lyst til at diskuttere! men for en ordensskyld og som et ekstra bemærkning vil jeg gerne sige at jeg havde forsøgt, med hvad jeg kender til indenfor PHP at løse problemet selv inden jeg stillede spørgsmålet! så UNDSKYLD at jeg tog din tid!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester