Jump to content
php.lv forumi

php teksta salīdzināšana


test2

Recommended Posts

Tātad nesen sastapos ar problēmu savā pm sistēmā!

Ja lietotājs nosūta ziņu jūzerim, kur manā formā ievada jūzeri, kam tiks sūtīta ziņa, tad aiziet mysql pārbaude, vai tāds mazs datubāzē eksistē.

datubāzē niks , ir pieņemsim test, un jūzeris ir uzrakstījis to šādi Test, mysql saka ka viss ok, bet kad nāk ziņas apskatīšana precīzāk

if ($_SESSION['niks'] == $niks) {

echo "veestule";

else {

echo "Saka, ka vēstuli nevar apskatīt, jo jūs nēsat tas, kam viņa sūtīta";

}

...

...

Saka, ka vēstuli nevar apskatīt, jo jūs nēsat tas, kam viņa sūtīta, zinu ka varētu to nika pārbaudi nomanīt, piemēram uz ID, bet vai nevarat padot kādu citu ideju? Jo tad man diezgan daudz jāpārkodē, jo tur daudz, kas no tā ir atkarīgs...

Link to comment
Share on other sites

Piedod, bet ir nevis "nēsat", bet "neesat".

 

No datu modeļa viedokļa raugoties, pareizi būtu izmantot ID lauku, nevis niku.

 

Un nevis vienkārši ID, bet MemberID vai UserID, vai current_user_id.

 

Kad saņēmējs apskata ziņu, tad pārbauda, vai ziņas user_id == current_user_id, vai, es darītu tā - SELECT ... WHERE message_key = $message_key AND recipient_user_id = $current_user_id.

 

Kur $message_key ir Hash simbolu virkne, ko izmanto urlos ID vietā, tādejādi jau vien novēršot iespēju, ka kāds varētu uzminēt linku citas vēstules lasīšanai.

 

Protams, viss quotots vai pārvērsts uz (int) pirms ietveršanas SQL pieprasījuma stringā.

Link to comment
Share on other sites

×
×
  • Create New...