Tags
Forum
Artikler
Brugere
Stil spørgsmål
1
online
Login
Husk mig
foreach hjælp..
Tags:
php
Bruger #1067
@ 26.10.04 10:42
0
foreach($_GET as $key=>$value) {
eval("$$key = \\"$value\\";");
}
Er der en fejl i den foreach sætning?
- walker
http://walker-wod.tk
5
svar postet i denne tråd vises herunder
2
indlæg har modtaget i alt
4
karma
Sorter efter stemmer
Sorter efter dato
2
Bruger #4683
@ 26.10.04 10:56
183
hmm... Da du ikke har skrevet $_GET['et_eller_andet'], antager jeg at du vil skrive alt hvad der er i $_GET[].. Det kan du gøre med print_r:
print_r $_GET;
Det ser bare ud som om du vil noget mere... Du skal jo vise de data du får ud af eval... eval skriver ikke selv data, den formatere dem bare..
prøv med:
foreach ($_GET as $key=>$value) {
echo $key ."=". $value ."\\n";
}
Hvis det er det du vil
[Redigeret d. 26/10-04 11:01:59 af JT]
2
Bruger #3143
@ 26.10.04 16:01
2
1.965
Til de andre svar: der står eval, ikke echo.
Jeg vil gætte på at det er en register_globals funktion. PAS PÅ med det!!
Koden kommer med fejl, hvis der ikke er get variabler, for så er $_GET ikke en array.
prøv evt:
if(is_array($_GET)) foreach($_GET as $key=>$value) $$key = $value;
Koden tester om der er get variabler, og den er mere sikker, da den kun giver brugeren fuld adgang til at ændre variabler, ikke adgang til at køre tilfældig kode, som din egen version gjorde!!!!!!
[Redigeret d. 26/10-04 16:04:27 af Jesper Kristensen]
0
Bruger #1067
@ 26.10.04 11:02
0
Den skriver at der er fejl i argumentet.. :/
0
Bruger #4683
@ 26.10.04 12:07
183
Hvis du vil skrive indholdet af $_GET, så brug
print_r $_GET;
eller:
while (list($key, $value) = each($array)) {
echo "Key: $key; Værdi: $value\\n";
}
Prøv evt at skiv hvad du vil??
[Redigeret d. 26/10-04 12:08:06 af JT]
0
Bruger #4683
@ 27.10.04 08:37
183
Havde nu set at der stor eval, men da der ikke var en if indvolveret, troede jeg at der skulle skrives...
My bad
Karma barometer (30 dage)
Modtaget
Givet
X
Favorit hos
Forum tråde
Artikler
Tilføj til dine favorit tags
Fjern fra dine favorit tags