[ PHPovac @ 03.03.2012. 17:04 ] @
kada radite admin panele za sajtove, da li npr stavite link obrisi.php?tip=slike&id=1 i posle u php fajlu
Code:

if(isset(..) {
$tip = escape(...);
$id = escape(..);
mysql_query("delete from $tip where id = $id");
} else {
die(...);
}

ili imate array vrednost => tabela ili kako?
ja sam do sad radio vrednost => tabela ali ne znam da li je to potrebno pošto je admin panel zaštićen lozinkom...
[ dakipro @ 03.03.2012. 18:01 ] @
probaj da malo pojasnis posto nisam siguran sta je tacno pitanje.
Inace obicno se privilegije (i za logovane korisnike) proveravaju pre dolaska do dela koda koji radi neku akciju, pa se uglavnom samo izvrsava upit o brisanju na neki nacin. Ali ja ne bi koristio nacin na koji si ti to napisao u primeru, jer korisnik skoro pa nikad ne brise jedan jedini rekord iz tabele, vec brise neki entitet na sajtu, da kazem model. Recimo ako brises korisnika, onda brises iz users tabele, brises relacionu tabelu sa privilegijama/grupama, relacionu tabelu sa postovima, slike sa servera i iz baze ili sta vec korisnik ima. Slicno i ako brises sliku sa sajta, obrises u bazi, brises thumb, crop, original, brises relacije te slike sa tagovima, kategorijama i sl. Tako da prakticno u samo recimo 20% slucajeva (naravno zavisi od aplikacije) mozes da koristis tako napisan univerzalni kod za brisanje.
[ PHPovac @ 03.03.2012. 20:18 ] @
Moje pravo pitanje je bilo... Da li da verujem korisniku ili da predpostavim da je zlonameran (pod korisnik mislim administrator sajta)...
I da li im vi verujete...
[ peca89bg @ 03.03.2012. 20:22 ] @
ja nikad nisam escepovao do sada :) ako bude nesto sto ne treba nek klijent otpusti radnike :D :D
[ pajaja @ 03.03.2012. 20:58 ] @
Nemoj da verujes nikom pa ni administratoru sajta. Ako nista, cak i da 100% nije zlonameran, u slucaju da neko dodje do pristupa nalogu verovatno nece moci da napravi onoliku stetu kao sto bi mogao sa busnim admin panelom. Takodje pogledaj da koristis PDO i njegov prepare metod.
[ dakipro @ 03.03.2012. 22:32 ] @
upravo tako, PDO i prepare da se ne cinculiras sa escapovanjem parametara, a to kome koliko verujes odredjujes zavisno od aplikacije.
Ako neko sme da obrise sve iz baze, onda sme to da radi i treba da pazi (i potvrdi), ako imas vise nivoa administratorskih naloga onda ogranicavas ko sta sme da radi i koje stvari sme da brise.
[ PHPovac @ 04.03.2012. 22:28 ] @
Još uvek ne koristim nikakav DAL. Samo mysql_ funkcije u php-u.
Rešio sam da verujem korisniku da neće namerno da uništi sajt.
Što se tiče drugih korisnika koji imaju dozvole da npr samo pišu vesti i menjaju, svaki php fajl traži određene dozvole koje su zapisane u sesiji.
Ako neko dođe do pristupa nalogu, može ručno da selektuje sve checkboxove i da klikne na obriši.