Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 3.032 pregleda

Najnovija ↓

Koriscenje extract() funkcije 22.04.2011. u 14:18 · pre 189 meseci #1
Kazu neki da se ne preporucuje koriscenje ove funkcije.
Malo sam citao, ali nije mi tu sve najjasnije ™.

Na primer, kod formi sa vise od 20 polja, nalazim da je korisna...


Vidim da se ne preporucuje koriscenje u ovom obliku:

extract($_POST); (da li dodatni parametri ovde pomazu, i sta tacno rade???)

A onda, vidim da postoje i drugacija misljenja:

http://www.etomite.com/topic/7...sue-with-php-function-extract/

Hvala na pomoci!
Re: Koriscenje extract() funkcije 22.04.2011. u 15:18 · pre 189 meseci
izmenjeno 1 put, poslednji put Br@nkoR 22.04.2011. u 19:33
  1. Br@nkoR22.04.2011. u 19:33zapis iz teksta poruke
#2
Nema neko iskustvo sa PHP-om, neko sa većim iskustvom će nam, nadam se, objasniti. Ali korišćenje samo extract($_POST) može biti veoma opasno jer može da se lako prepiše (overwrite) promenljiva.
Npr. ukoliko imaš
Code:

<?php
session_start();
$_SESSION['admin'] = 0;
extract($_GET);
if(isset($_SESSION['admin']) AND $_SESSION['admin'] == 1)
  echo 'You are admin!';

?>

i pozoveš fajl na ovaj način ime_fajla.php?_SESSION[admin]=1 Šta će se desiti?
Zato je po meni bolje ili ne koristiti a ako si primoran dodaj kao drugi argument EXTR_SKIP (neće raditi overwrite postojećih promenljivih ) ili koristiti i treći argument uz drugi argument EXTR_PREFIX_ALL ili EXTR_PREFIX_SAME funkcije kojim će se dodati prefiks koji ti definišeš.
Potpis
Banned - Not available
Re: Koriscenje extract() funkcije 22.04.2011. u 15:43 · pre 189 meseci #3
Hvala, Branko!

Citat:
jer može da se lako prepiše (overwrite) bilo koja promenljiva.


Da, to sam citao i nisam razumeo najbolje taj deo (nisam razumeo da su i session varijable ovim ''potkacene''). Znaci, napadac bi trebalo (samo?) da pogodi ime varijable i njenu vrednost, ako sam dobro shvatio...

Re: Koriscenje extract() funkcije 22.04.2011. u 15:51 · pre 189 meseci #4
Citat:
kelja: Hvala, Branko!



Da, to sam citao i nisam razumeo najbolje taj deo (nisam razumeo da su i session varijable ovim ''potkacene'').

Nema na čemu.
Da naravno, šta je $_SESSION ili neka druga superglobalna (SERVER, GLOBAL, GET, POST, REQUEST, FILE, COOKIE.... ) promenljiva neko običan niz.

Citat:
kelja:Znaci, napadac bi trebalo (samo?) da pogodi ime varijable i njenu vrednost, ako sam dobro shvatio...

Da upravo to, a pogledaj malo forume i videćeš da programeri obično imaju slične navike imenovanja promenljivih pa i nije toliko teško pogoditi.

Pozdrav.
Potpis
Banned - Not available
Re: Koriscenje extract() funkcije 22.04.2011. u 15:59 · pre 189 meseci #5
Zaboravih da napišem, slično je, ako ne i isto, kao da si uključio register_globals.
Potpis
Banned - Not available
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme