Recent comments

අලුත්ම ලිපි 🡲

PHP 12 - PHP වලින් MySQL සමග වැඩකරමු (II කොටස)

11 වැනි පාඩමෙන් අපි database server එකක් සමග සම්බන්ධවී එහි database එකක් නිර්මාණය කොට, ඒ තුළ table එකක් සාදා දත්ත ඇතුළත් කරන ආකාරය පිළිබඳව සාකච්ඡා කළා. මේ පාඩමේ අරමුණ එතැනින් මඳක් ඉදිරියට ගොස්, ඇතුළත් කරන ලද දත්ත නැවත ලබාගැනීම, එම දත්ත වෙනස් කිරීම සහ මකා දැමීම පිළිබඳව අවබෝධයක් ලබාගැනීමයි.

ඩේටාබේස් එකක ඇති දත්ත කියවමු

ඩේටාබේස් එකක දැනටමත් ඇතුළත් කර ඇති දත්ත නැවත ලබාගැනීම සඳහා   භාවිතා වන SQL විධානය පහත පරිදි වේ.


මෙහි SELECT නැමැති Keyword එකට පසුව ඔබ දත්ත ලබාගන්නා table එකෙහි columns කොමා වලින් වෙන්කොට ලබාදිය හැක. සියලුම columns එකවර select කිරීම සඳහා * ලකුණ භාවිතා කරන්න.

උදාහරණයක් ගෙන බලමු


මෙහි 5 වැනි පේළියේදී සුපුරුදු පරිදි සම්බන්ධතාවය ගොඩනැගීම සඳහා අවශ්‍ය කේතයත් ඉන්පසු 6 සිට 9 දක්වා පේළි වලින් IF statement එකක් හරහා, එම සම්බන්ධතාවය ගොඩනැගීම අසාර්ථකනම් කේතය ක්‍රියාත්මක කිරීම නවතා දමන ලෙස (Die) ත් දී ඇති String එකසමග error message එක බ්‍රව්සරය වෙත print කරන ලෙසත් කියා ඇත. ඉන්පසුව 11 වැනි පේළියේදී SchoolDB නැමැති database එක select කර ඇත.

13 වැනි පේළියෙන් කෙරෙන්නේ දත්ත select කිරීම සඳහා වන query එක mysql_query() Function එක මගින් ක්‍රියාත්මක කර ඉන් ලැබෙන ප්‍රතිඵලය $result නැමැති variable එක තුළ ගබඩා කිරීමයි. ඉන් අනතුරුව සිදුකර ඇත්තේ එම $result නැමැති variable එක තුළ ඇති දත්ත පේළියෙන් පේළිය While Loop එකක් හරහා කියවමින් Echo විධානය භාවිතා කර එම ප්‍රතිඵල බ්‍රව්සර් එක වෙත print කිරීමයි.

මෙහිදී භාවිතා කර ඇති mysql_fetch_array නැමැති function එකෙන් කරන්නේ array එකක් ලෙස ලැබී ඇති ප්‍රතිඵලයක් පෙළින් පෙළ කියවීමයි. මෙම function එක call කරන වාරයක් පාසාම එය array එකෙහි පේළි පිළිවෙලින් එකින් එක පහළට ගොස් කියවා ප්‍රතිඵලය ලබාගනී. While Loop එකෙන් කෙරෙන්නේ මෙම Function එක නැවත නැවතත් call වීම බව දැන් ඔබට වැටහෙනවා ඇති. මෙසේ එක් එක් අවස්ථාවේදී ලැබෙන ප්‍රතිඵලය මා $Row නැමැති විචල්‍යය තුළ ගබඩා කර  ඉන්පසුව එම $Row විචල්‍යය සමග එක් එක් පේළියේ ඇති FirstName සහ LastName සඳහා වන අගයන් echo කර ඇත.

පැහැදිලියි නේද?

මෙම ප්‍රතිඵල ඔබට HTML Table එකක් තුළ පෙන්විය යුතුනම්, ඒසඳහා ඉහත කේතයේ 15 සිට 19 දක්වා වන කේත වෙනුවට පහත කේත පෙළ ආදේශකරගත හැකියි. මෙය මා මේ පාඩමෙන් කියාදුන් ඩේටාබේස් එකකින් ලබාගන්නා තොරතුරු ඔබේ HTML දැනුම සමග එකතුකර භාවිතා කළ හැකි එක් නිර්මාණාත්මක අවස්ථාවක් පමණි.



මෙහිදී ඉතා සරල table එකක් නිර්මාණය කෙරෙනවා. මෙහි සම්පූර්ණ කේතයම ඇත්තේ <table></table> tags අතර බව ඔබට පෙනෙනවා ඇති. පළමුව table එකක් සකසා එහි headings සඳහා අගයන් ලබාදී ඉන්පසුව පෙර පරිදිම While Loop එකෙන් ලැබෙන ප්‍රතිඵල අලුත් row එකක elements සඳහා ලබාදී ඇත.

‍දැන් අපි තවත් පියවරක් ඉදිරියට ගොස් දැනටමත් ඇතුළත් කොට ඇති දත්ත වෙනස් කරන ආකාරය පිළිබඳව සොයාබලමු.

ඩේටාබේස් එකක් Update කරමු

දැනටමත් ඩේටාබේස් එකකට ඇතුළත් කර ඇති තොරතුරු වෙනස්කිරීම සඳහා ඔබට පහත SQL විධානය භාවිතා කළ හැකියි.


මෙහි Update නැමැති keyword එකෙන් පසුව update කළ යුතු දත්ත ඇති table එකෙහි නමත්, SET විධානයෙන් පසු වෙනස් කළ යුතු එක් එක් column එක සහ ඒ සඳහා වන නව අගයනුත් ලබාදිය යුතුයි. Where නැමැති clause එකෙන් ඔබට වෙනස් කළ යුතු දත්ත ඇතුළත් පේළිය හෝ පේළි නිවැරදිව select කරගත හැකියි.


මා විසින් 11 වැනි පාඩමේදී සකසාගත් SchoolDB නැමැති ඩේටාබේස් එක තුළ ඇති Student නැමැති table එකේ දැනට පවතින අගයන් පහත පරිදි වේ.


මෙහි Amal නැමැති සිසුවාගේ LastName එක Chaminda ලෙසත් Age එක 31 ලෙසත් වෙනස් කළයුතු නම්, ඒ සඳහා පහත පරිදි ඉතා පහසුවෙන්ම ඉහත කී SQL විධානය සමග PHP කේතයන් භාවිතා කළ හැකියි.




මෙහි භාවිතා කර ඇති Query එකේ Where නැමැති Keyword එක ඇති 10 වැනි පේළියෙන් කෙරෙන්නේ FirstName එක 'Amal' වන සිසුවා පමණක් තෝරාදීමයි. ඉතිරිය ඔබට පැහැදිලි ඇති. මෙසේ Update වීමෙන් පසු Student table එක පහත පරිදි පෙනෙනු ඇති.



මෙවැනිම ආකාරයකින් ඔබට දැනට ඇති දත්ත මකාදැමීමද කළ හැකියි.

ඩේටාබේස් එකක ඇති තොරතුරු මකාදමමු

ඩේටාබේස් එකක ඇති දත්ත මකාදැමීම සඳහා වන SQL විධානය පහත පරිදි වේ.


මෙහි DELETE FROM යන keywords දෙකෙන් පසු ඔබට මකාදැමීමට අවශ්‍ය දත්ත ඇති table එකෙහි නම ලබාදිය යුතුයි. ඉන්පසු WHERE clause එක සමග මකාදැමිය යුතු දත්ත අඩංගු පේළිය තෝරා දිය යුතුයි.

මෙයද උදාහරණයක් මගින්ම පැහැදිලි කරගනිමු.

මා විසින් ඉහතදී තොරතුරු වෙනස් කරනලද table එකෙහි දැනට වාර්තා 3ක් පවතී.


මෙහි Amal නැමැති සිසුවාගේ දත්ත මෙම Student table එකෙන් මකා දැමීම සඳහා මට ඉහත කී DELETE FROM විධානය භාවිතා කළ හැක.

පහත කේත සටහන දෙස බලන්න.


මෙහි 8 වැනි පේළියේදී mysql_query function එක සමග ධාවනය කර ඇති SQL විධානයෙන් Student නැමැති table එකෙහි FirstName එක Amal වන වාර්තාව මකා දමන්නැයි කියා ඇත.

පැහැදිලියි නේද? 

දැන් Student table එක පහත පරිදි දිස්වනු ඇත.


දැන් ඔබට PHP සමග MySQL භාවිතයෙන් ඩේටාබේස් සර්වර් එකක් සමග සම්බන්ධ වීම, ඩේටාබේස් එකක් සෑදීම, එහි table එකක් සාදා දත්ත ඇතුළත් කිරීම, වෙනස් කිරීම සහ මකාදැමීම පිළිබඳව අවබෝධයක් ඇතැයි සිතනවා.

මෙම ලිපියෙන් ඔබ යමක් ඉගෙනගත්තානම්, කමෙන්ට් එකකින් මා දිරිමත් කරන්නත් අමතක කරන්න එපා.ස්තුතියි!

23 comments:

  1. elazzzzz......... :s

    ReplyDelete
  2. fatta machan. keep it up!

    ReplyDelete
  3. කරුණාකර ඉතිරි පාඩම් මාලාවත් ලියන්නේනමි මැනවි.
    Relation සහිත ඩේටා බේස් වලින් මකන අයුරුත් පැහැදිලි කරන්න.

    ReplyDelete
    Replies
    1. ස්තුතියි! ඉක්මණින්ම ලියන්නම්

      Delete
  4. ithuruwath liyandooooooo

    ReplyDelete
  5. නියමයි මචන්............

    ReplyDelete
  6. අහම්බෙන් වගේ කියවන්න හම්බුනේ.. වැඩේ නම් සුපර්... ඉදිරියටම කරගෙන යන්න...

    ReplyDelete
  7. niyamaiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii

    ReplyDelete
  8. නියමයි.........දිගටම ලියන්න අයියා.............

    ReplyDelete
  9. ඉතා හොද පාඩම් පෙලක්....... ඉදිරි පාඩම් යොදනතෙක් බලාපොරොත්තුවෙන් සිටිමි. ස්තූතිය.

    ReplyDelete
  10. අනෙක් පාඩම් ඉක්මකින් ලියන්නකෝ

    ReplyDelete
  11. Good Soo nice and briliant thats i Wanna say. good luck i'm waiting for next lesson

    ReplyDelete
  12. niyamai hodata theruna padamanam....

    ReplyDelete
  13. ela ela thawa liynda.kiniththata jayaaaaaaaaa

    ReplyDelete
  14. පුළුවන් ඉක්මනට අනිත් ලිපියත් ලියන්න

    ReplyDelete