PHP අව්ලක් බන්,. උදව් දෙන්ඩෝ.,,

crhunter

Active member
  • Aug 21, 2016
    614
    118
    43
    PHP අව්ලක් බන්,. උදව් දෙන්ඩෝ.,,

    මචං මුලින්ම machine එකේ තියාගෙන වැඩ කරද්දී කිසි අව්ලක් තිබ්බේ නෑ.,
    hostgator එකට up කරාට පස්සේ තමා අවුල් එන්න ගත්තේ.,
    මම තාම මේ සීන් එකට අලුත්.,

    මුලින්ම up කරපු හැටියේම මෙන්න මේ errors ආවා .
    rSh853g.jpg


    php.ini එකෙන් output buffer on කරලා ඒක හරිගස්සපුවාම සමහර page වලට යන්න දෙන්නේ නෑ .,, internal error 500 :This website is unavailable at the moment
    කියලා වැටෙනවා .,

    AAby9Iq.jpg



    මට හිතෙන්නේ session තියෙන page වලට තමා case එක .,
    login එකෙන් කෙලින්ම redirect කරන page එකට කිසි error එකක් නෑ.,
    එකේ ඉදන් අනිත් session තියෙන page වලට යද්දී තමා case ඒක.,

    දන්න එවුන් සිද්දිය විසදලා දීහන් බන්., සිරාවට පින් ඈ .,

    පින් වලට අමතරව රේප් ද ලබාදෙනු ලැබේ,.:D:yes:
     
    Last edited:

    BLACKLIST_MEMBER

    Well-known member
  • Feb 9, 2008
    37,854
    14,813
    113
    127.0.0.1
    මේ error එක එන්නේ සාමාන්‍යයෙන් ?> php tag මේ විදිහට close කරයින් පස්සෙත් උබ header එකට session එක යවන්න ගියහමයි.

    මේක framework use කරපු කෝඩ් එකක්ද නැත්තන් අතින් ගහපු එකකද? framework වල ඔය ප්‍රශ්න එනවා අඩුයි. උන් ඕක ගානට මැනේජ් කරන නිසා.


    මේක එන්න හේතුව
    session එක සෙට් කරන්න අවශ්‍ය වෙන්නේ හෙඩර් එකේදියි.

    දැන් උබ පේජ් එකේ කොතැනක හරි අවුට්පුට් එකක් එවල තියෙනවනම්, echo හරි මොන විදිහකින් හරි, අන්න එතකොට හෙඩර් එක පහු වෙනවා. ඊටපස්සේ ආපහු දෙවැනි වතාවට හෙඩර් එක සෙට් කරන්න බැහැ

    කොටින්ම පේජ් එකේ බොඩි එකේදී හෙඩර් එක සෙට් කරන්න බැහැ

    සමහරු ?> ටැග් අරිනවා වහනවා එකම පේජ් එක ඇතුලෙදි, එයාලගේ custom template system එකක වැඩකරනකොට තමයි ඒ ක්‍රමය කරන්නේ.
    ඒ කියන්නේ php tags close කරලා ඉවර වෙලා php?> එතැනදී HTML කෝඩ් ලියන්න පුළුවන්. ඊටපස්සේ ආපහු යටින් තව <? ටැග් ඇරලා ආයේ php කෝඩ් කොටසක් එතන රන් කරන්න පුළුවන්.

    දැන් ඔය දෙවැනි කොටසේ දී session ස්ටාට් කරන්න ගියොත් ඔය අවුල එනවා, එකට හේතුව කලින් html අවුට් එකක් ආව කියන්නේ එතැනදී පේජ් එකේ හෙඩර් එක රෙන්ඩර් වෙලා ඉවරයි කියන එක.

    තව ඕක මිස්ටේක් එකක් විදිහට වෙනවා old fashion එකට කෝඩ් කරනකොට එයාල හැම ෆයිල් එකකම php ටැග් ඇරලා උඩින්, ඊටපස්සේ ආපහු වහනවා යටින්.
    පස්සේ ඒ ෆයිල් වෙන ෆයිල් වලින් include කරනවා.

    ඒ ක්‍රමයේ වැරද්දක්මි නැහැ, නමුත් මිස්ටේක් එකක් වෙන්න පුළුවන් ඒ ෆයිල් වල මුල <?php මේ ටැග් පටන් ගන්න කලින් සහ මේ ටැග් ?> ඉවර වෙන්න කලින් වැරදිලා හිස් ඉඩක් ඉතුරු වෙන්න ඉඩ තියෙනවා මිස්ටේක් එකකින් (space) එතකොට ඔන්න ඒක html අවුට් එකක්. ඔන්න ඔය අස්සේ session එකක් ස්ටාට් කරන්න හැදුවොත් වැඩේ වෙන්නේ නැහැ. මොකද අර මිස්ටේක් space කොටස රෙන්ඩර් වෙලා ඉවර උනායින් පස්සෙයි උබ ආපහු සෙස්සන් එක යවන්නේ. එතකොට සෙස්සන් එක ගිහින් ඉවර වෙලා ආපහු දෙවැනි වතාවට සෙස්සන් එකට අත ගහන්න බැහැ. එහාකොට ඔය එරර් එක එනවා.

    ඒ නිසා ඔය php ටැග් close කරන style එක ඉවරයි. දැන් කරන්නේ php ටැග් ක්ලෝස් කරන්නේ නැතුවම කෝඩ් එක ලියනවා. හැම ෆයිල් එකකම php tag නැහැ. එක aviod කරලා ලියන එක safe.
    php tags start කරන එක විතරයි ලියන්නේ.


    තව පේජ් එකක් include කරලා තියෙනවනම් ඒ පේජ් එකේ echo out වගේ ඒවා තියෙනවනම් ඊටත් කලින් තමයි session_start function එක එන්න ඕන.
     
    Last edited:
    • Like
    Reactions: crhunter

    DemonAkalanka

    Well-known member
  • Aug 17, 2011
    7,579
    1,458
    113
    Sri Lanka
    machan ubage
    jobpostedit.php
    file ekata thawa page include karala thiyanawada.

    aema karala thiyanawanam, ewaye session_start(); ayn karala balapan.
     

    crhunter

    Active member
  • Aug 21, 2016
    614
    118
    43
    මේ error එක එන්නේ සාමාන්‍යයෙන් ?> php tag මේ විදිහට close කරයින් පස්සෙත් උබ header එකට session එක යවන්න ගියහමයි.

    මේක framework use කරපු කෝඩ් එකක්ද නැත්තන් අතින් ගහපු එකකද? framework වල ඔය ප්‍රශ්න එනවා අඩුයි. උන් ඕක ගානට මැනේජ් කරන නිසා.


    මේක එන්න හේතුව
    session එක සෙට් කරන්න අවශ්‍ය වෙන්නේ හෙඩර් එකේදියි.

    දැන් උබ පේජ් එකේ කොතැනක හරි අවුට්පුට් එකක් එවල තියෙනවනම්, echo හරි මොන විදිහකින් හරි, අන්න එතකොට හෙඩර් එක පහු වෙනවා. ඊටපස්සේ ආපහු දෙවැනි වතාවට හෙඩර් එක සෙට් කරන්න බැහැ

    කොටින්ම පේජ් එකේ බොඩි එකේදී හෙඩර් එක සෙට් කරන්න බැහැ

    සමහරු ?> ටැග් අරිනවා වහනවා එකම පේජ් එක ඇතුලෙදි, එයාලගේ custom template system එකක වැඩකරනකොට තමයි ඒ ක්‍රමය කරන්නේ.
    ඒ කියන්නේ php tags close කරලා ඉවර වෙලා php?> එතැනදී HTML කෝඩ් ලියන්න පුළුවන්. ඊටපස්සේ ආපහු යටින් තව <? ටැග් ඇරලා ආයේ php කෝඩ් කොටසක් එතන රන් කරන්න පුළුවන්.

    දැන් ඔය දෙවැනි කොටසේ දී session ස්ටාට් කරන්න ගියොත් ඔය අවුල එනවා, එකට හේතුව කලින් html අවුට් එකක් ආව කියන්නේ එතැනදී පේජ් එකේ හෙඩර් එක රෙන්ඩර් වෙලා ඉවරයි කියන එක.

    තව ඕක මිස්ටේක් එකක් විදිහට වෙනවා old fashion එකට කෝඩ් කරනකොට එයාල හැම ෆයිල් එකකම php ටැග් ඇරලා උඩින්, ඊටපස්සේ ආපහු වහනවා යටින්.
    පස්සේ ඒ ෆයිල් වෙන ෆයිල් වලින් include කරනවා.

    ඒ ක්‍රමයේ වැරද්දක්මි නැහැ, නමුත් මිස්ටේක් එකක් වෙන්න පුළුවන් ඒ ෆයිල් වල මුල <?php මේ ටැග් පටන් ගන්න කලින් සහ මේ ටැග් ?> ඉවර වෙන්න කලින් වැරදිලා හිස් ඉඩක් ඉතුරු වෙන්න ඉඩ තියෙනවා මිස්ටේක් එකකින් (space) එතකොට ඔන්න ඒක html අවුට් එකක්. ඔන්න ඔය අස්සේ session එකක් ස්ටාට් කරන්න හැදුවොත් වැඩේ වෙන්නේ නැහැ. මොකද අර මිස්ටේක් space කොටස රෙන්ඩර් වෙලා ඉවර උනායින් පස්සෙයි උබ ආපහු සෙස්සන් එක යවන්නේ. එතකොට සෙස්සන් එක ගිහින් ඉවර වෙලා ආපහු දෙවැනි වතාවට සෙස්සන් එකට අත ගහන්න බැහැ. එහාකොට ඔය එරර් එක එනවා.

    ඒ නිසා ඔය php ටැග් close කරන style එක ඉවරයි. දැන් කරන්නේ php ටැග් ක්ලෝස් කරන්නේ නැතුවම කෝඩ් එක ලියනවා. හැම ෆයිල් එකකම php tag නැහැ. එක aviod කරලා ලියන එක safe.
    php tags start කරන එක විතරයි ලියන්නේ.

    සිරාවට වටිනා විස්තරයක් බන්., thanx
    මමත් old fashion ඩයල් එකක් වගේ බන් .,
    open close හැමතැනම.,
    මැද්දෙන් html සීන් කරන්න ගියාම තමා ඕක වෙන්නේ.,
    සමහර වෙලාවට echo එකෙමත් ගහනවා.. concatenation walin
    ඔයා කියන්නේ එහෙම safe කියලද?

    seesion nm mulinma thama gahnne ,.. white space wath thiyn naa.
    headers nm ithin body eketh gahanwa bn.,
    uba kiynne mulu page ekama eka php tag ekak use karnna kiyalada??

    wistharayen saahena deyk gatta machn thanx.,
    rep
     

    crhunter

    Active member
  • Aug 21, 2016
    614
    118
    43
    wade hari giyaa bn.,,
    login_process page eke white space seen ekak thibbe,,.
    thanx machn ubalata.,,:love::love:
    serotama rep dunno.,,:yes::yes:
     

    BLACKLIST_MEMBER

    Well-known member
  • Feb 9, 2008
    37,854
    14,813
    113
    127.0.0.1
    සිරාවට වටිනා විස්තරයක් බන්., thanx
    මමත් old fashion ඩයල් එකක් වගේ බන් .,
    open close හැමතැනම.,
    මැද්දෙන් html සීන් කරන්න ගියාම තමා ඕක වෙන්නේ.,
    සමහර වෙලාවට echo එකෙමත් ගහනවා.. concatenation walin
    ඔයා කියන්නේ එහෙම safe කියලද?

    seesion nm mulinma thama gahnne ,.. white space wath thiyn naa.
    headers nm ithin body eketh gahanwa bn.,
    uba kiynne mulu page ekama eka php tag ekak use karnna kiyalada??

    wistharayen saahena deyk gatta machn thanx.,
    rep

    එහෙම කියන්න බැහැ ඒක උබ කෝඩ් කරන විදිහ අනුව වෙනස් වෙනවනේ.
    නමුත් උබට වැඩි පුර කාලයක් යනවා ඕවයේ bug හෝයන්න.

    ඒක නිසා උබට කරන්න තියෙන ලේසිම ක්‍රමය MVC පැටන් එක ට කෝඩ් කරන්න.
    MVC පොඩ්ඩක් පුරුදු වෙලා, (හම්බනෙකට ලියන්න ඕනේ නැහැ. basics ටික ඉගෙනගෙන, OOP etc) ඉක්මනට framework එකකට සෙට් වෙන්න.
    ඒවා වල කොහෙවත් PHP ඕපනින් ටැග් එක හැරෙන්න close ටැග්ස් නැහැ.
    හැබැයි ඔය උබේ සිස්ටම් එකෙන් අතෙන්ට යනවා කියන්නේ ආපහු මුල ඉඳන් php ඉගෙනගත්ත වගේ කාලයක් යයි. ඒ උනාට ඒවායේ උබ ඔය hardcode style session start වගේ ෆන්ෂන් ඔක්කොම අත ඇරලා, කොටින්ම MYSQL QUERY පවා අයින් කරලා, form submission security කෝඩ් සේරම ගැන worry වෙන එක නවත්තන්න පුළුවන්.

    බොහොම පුංචි දේවල් වලට framework use කරන එක overkill උනත්, framework එකේ files ටික server එකේ තිබ්බට, ඒවා ලෝඩ් වෙන්නේ නැහැ උබේ වැඩේ පුංචි දෙයක් නං. ඒ කොටස විතරයි රන් වෙන්නේ. ඒ නිසා ලොකු issue එකක් නැහැ.
    උබ ඔය project එක ඉවර කරලා framework වලට පැනපන්.
    දැන් ඉදන් පටන් ගන්න ගියොත් අවුරුද්දක් වත් යයි ඕක ෆිනිෂ් කරන්න :rolleyes:
     

    crhunter

    Active member
  • Aug 21, 2016
    614
    118
    43
    එහෙම කියන්න බැහැ ඒක උබ කෝඩ් කරන විදිහ අනුව වෙනස් වෙනවනේ.
    නමුත් උබට වැඩි පුර කාලයක් යනවා ඕවයේ bug හෝයන්න.

    ඒක නිසා උබට කරන්න තියෙන ලේසිම ක්‍රමය MVC පැටන් එක ට කෝඩ් කරන්න.
    MVC පොඩ්ඩක් පුරුදු වෙලා, (හම්බනෙකට ලියන්න ඕනේ නැහැ. basics ටික ඉගෙනගෙන, OOP etc) ඉක්මනට framework එකකට සෙට් වෙන්න.
    ඒවා වල කොහෙවත් PHP ඕපනින් ටැග් එක හැරෙන්න close ටැග්ස් නැහැ.
    හැබැයි ඔය උබේ සිස්ටම් එකෙන් අතෙන්ට යනවා කියන්නේ ආපහු මුල ඉඳන් php ඉගෙනගත්ත වගේ කාලයක් යයි. ඒ උනාට ඒවායේ උබ ඔය hardcode style session start වගේ ෆන්ෂන් ඔක්කොම අත ඇරලා, කොටින්ම MYSQL QUERY පවා අයින් කරලා, form submission security කෝඩ් සේරම ගැන worry වෙන එක නවත්තන්න පුළුවන්.

    බොහොම පුංචි දේවල් වලට framework use කරන එක overkill උනත්, framework එකේ files ටික server එකේ තිබ්බට, ඒවා ලෝඩ් වෙන්නේ නැහැ උබේ වැඩේ පුංචි දෙයක් නං. ඒ කොටස විතරයි රන් වෙන්නේ. ඒ නිසා ලොකු issue එකක් නැහැ.
    උබ ඔය project එක ඉවර කරලා framework වලට පැනපන්.
    දැන් ඉදන් පටන් ගන්න ගියොත් අවුරුද්දක් වත් යයි ඕක ෆිනිෂ් කරන්න :rolleyes:

    ade ow bn maath hitha hithaa hitiye,
    uba kiwwata passenm istheera una.,
    siraa MVC walata paninawa bn
    security side ekath patta neh.,
     

    Lakshan-Seram

    Well-known member
  • May 31, 2011
    24,745
    12,669
    113
    127.0.0.1:8080/Kandy
    Ube bad coding style, habit nisa kohen hari HTML or whitespace output ekak enawa athi.

    Okata lesima fix eka thama page eke udama

    <?php ob_start(); ?>

    Saha page eke yatama

    <?php ob_end_flush(); ?>

    Use karana eka. Fix ekak misak karanna hoda deyak newe. PHP walata mul ma kale matat awa awlak thama oka. Experience ekath ekka hariyai.

    HostGator ta kiyanna output buffering enable karanna kiyala.
     
    Last edited:
    • Like
    Reactions: crhunter