Parašė Kelmas· 2010 Bal. 2 22:04:00
#20
Teoriškai įmanoma, bet praktiškai nelabai kas naudoja. Jeigu nori naudoti tikrai tokia sistema kaip pvz:
narys/jonas.html
Tada reikės keisti kreipimasi į faila kitaip sakant "reikės puse fusion'o perašyti", nes fusion'o linkas toks:
// ORGINALAS profile.php?lookup=USER_ID
// TAU REIKIA profile.php?lookup=USER_NAME
Dabar sakysi kodėl (beveik)niekas taip nedaro? Atsakymas paprastas - reikia perrašyti daug kodo, dažniausiai tokie dalykai trukdo ieškoti serveriui informacijos apie tavo veiksmus portale, o ir reikia filtruoti labai informacija, kad XSS spragų neprisidarytum ir taip toliau.. O didelės naudos iš to ir nėra, todėl niekas taip ir nedaro.
Išvada: neverta to daryti.
Na, o jeigu nori tikrai daryti (ko aš tikrai nedaryčiau), tai teks redaguotis užklausas pagal save (dažniausiai
'WHERE' sąlygas).
/* Senas variantas */
$result = dbquery("SELECT <...> FROM <..> WHERE user_id = '$lookup'");
/* Tau reikės šito varianto, tik prieš tai reikia filtruoti $lookup, kad neprisidarytum sau žalos dar didesnės, bei reikia kažkur nuimti isNum() tikrinimą nes čia tau nebe skaičiai, o žodžiai */
$result = dbquery("SELECT <...> FROM <..> WHERE user_name = '$lookup");
Redagavo Kelmas· 2010 Bal. 2 23:04:35