рдПрд╕рдХреНрдпреВрдПрд▓ рдЗрдВрдЬреЗрдХреНрд╢рди рдХрд╛ рд╕рд╛рд░рд╛рдВрд╢



рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдПрд╕рдХреНрдпреВрдПрд▓ рдЗрдВрдЬреЗрдХреНрд╢рди рдХрд╛ рд╡рд┐рд╖рдп рдкрд╣рд▓реЗ рд╣реА рд╕рднреА рдХреЛ рддрдбрд╝рдХ-рднрдбрд╝рдХ рдореЗрдВ рд▓реЗ рдЪреБрдХрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рд╡рд┐рд╖рдп рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдмрд╛рдд рдХрд░рдиреЗ рдФрд░ рдЦреБрдж рдХреЗ рдЕрд╡рд┐рд╢реНрд╡рд╛рд╕ рдХреА рдЖрдЧ рдХреЛ рд╣рд╡рд╛ рджреЗрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд░реЛрдорд╛рдВрдЪрдХ рд╣реИ, рдШрдмрд░рд╛рд╣рдЯ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЬреЛ рд▓реЛрдЧ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдЖрд╢реНрд╡рд╕реНрдд рдереЗ, рд╡реЗ рдбрд░ рдЧрдПред

рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЗрдЦ рдереЗ - рдореИрдВ рдЗрд╕реЗ рдирд╣реАрдВ рджреЛрд╣рд░рд╛рдКрдВрдЧрд╛ - рдпрд╣ рд╕рдм рдХреБрдЫ рдЕрднреНрдпрд╛рд╕ рдХреЗ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕реЗ рдиреАрдЪреЗ рдЖрддрд╛ рд╣реИ:

  1. рдХрд┐рд╕реА рднреА рдмрд╛рд╣рд░реА рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рд╕рднреА рдбреЗрдЯрд╛ (рднрд▓реЗ рд╣реА рдпрд╣ рдбреЗрдЯрд╛ рдПрдХ рд╕реБрдкрд░ рд╕реАрдХреНрд░реЗрдЯ рдФрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рд╛рдЗрдЯ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ XML рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ) рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред

    рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдФрд░ рдЬреЛ рдЖрдк рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдЙрд╕реЗ рд▓рд╛рдПрдВред
    рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдкреВрд░реНрдгрд╛рдВрдХ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рдереЗ, рд▓реЗрдХрд┐рди рдЕрдХреНрд╖рд░ рдФрд░ (рдпрд╛) рдПрдХ рдмрд┐рдВрджреБ рдЖ рдЧрдП рд╣реИрдВ, рддреЛ рд╣рдо рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреА рд╕реВрдЪрдирд╛ рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рд╣рдо рдЧреНрд░рд╛рд╣рдХ рдХреЛ 500/404 / рдпрд╛ рдХреЛрдб рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

    рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдЙрджрд╛рд╣рд░рдг f-s:

    function getAsUint( &$var ) { return ( preg_match( "~^\\s*(\\d+)\\s*$~i", $val, $t ) ) ? $t[1] : null; } 


    рдЗрдирдкреБрдЯ рдкрд░, рдпрд╣ рдЕрдзреНрдпрдпрди рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдЪрд░ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдЖрдЙрдЯрдкреБрдЯ рджреНрд╡рд╛рд░рд╛ рдпрд╣ рд╕рд╣реА рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдпрд╛ рдпрджрд┐ рдорд╛рди рдЧрд▓рдд рдпрд╛ рдЦрд╛рд▓реА рд╣реИ, рддреЛ рдЗрд╕реЗ рд╢реВрдиреНрдп рдХрд░ рджреЗрддрд╛ рд╣реИред
    рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рд░ рд╕реНрдкрд╖реНрдЯ рд╣реИ - рдЖрдк рд▓рд╛рдареА рдФрд░ рдЖрд╕рд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдкрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рд╕реБрдкрд░ рдлрдВрдХреНрд╢рди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

    PHP рдореЗрдВ, рдЖрдк рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╣реИрдВ ред

    рд╣рдореЗрдВ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд░реВрдкреЛрдВ рдХреЗ рдЗрдирдкреБрдЯ рдорд╛рдкрджрдВрдбреЛрдВ рдореЗрдВ рдЕрдВрддрд░рд╛рд▓ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП - рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдирдВрдмрд░ рдкрд░ рд▓реМрдЯрдиреЗ рд╡рд╛рд▓реЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред
    рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЗрд╕ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рд▓рд┐рдП "123" рдФрд░ "123" рд╕рд╣реА рдореВрд▓реНрдп рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ "123" рд▓реМрдЯрд╛рдПрдЧрд╛
  2. рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА SQL рдХреНрд╡реЗрд░реА рдореЗрдВ, EVERYTHING рдХреЛ рдХреЛрдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреБрдЫ рднреА рдЬреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди)

    рдпрд╛рдиреА рдЖрдкрдХреЛ рдлрд╝реАрд▓реНрдб, рддрд╛рд▓рд┐рдХрд╛рдУрдВ, рдЖрджрд┐ рдХреЗ рдирд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рдХрд┐рд╕реА рднреА рдорд╛рди рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрди рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред

    рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдЖрдкрдХреЛ рд╕реЛрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реБрдХрд╛рд╡рдЯреЛрдВ рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛: "рдПрдХ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрди рдбрд╛рд▓реЗрдВ рдпрд╛ рдирд╣реАрдВ", рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдХрдордЬреЛрд░ рдЕрдиреБрд░реЛрдз рд▓рд┐рдЦрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдХрдо рдХрд░ рджреЗрдЧрд╛ред

     "select * from `table` where `id`={$id}" 

    (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рдХреЗ рд▓рд┐рдП, рдЬрдм рдпрд╣ рдЖрдИрдбреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрддрд╛ рд╣реИ рддреЛ рдЙрд╕ рддрд░рд╣ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред

  3. рд╕рднреА рдбреЗрдЯрд╛ (рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рд╡рд╣реА рдирд╣реАрдВ рд╣реИ рдЬреЛ рдмрд╛рд╣рд░ рд╕реЗ рдЖрдпрд╛ рдерд╛, рдмрд▓реНрдХрд┐ рдЗрдВрдЬрди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рдХреНрдпрд╛ рдмрдирд╛ рд╣реИ) рдХреЛ рдкрд░рд┐рд░рдХреНрд╖рдг рд╕реЗ рдЧреБрдЬрд░рдирд╛ рд╣реЛрдЧрд╛ред

    рдЖрдк mysql_real_escape_string рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

    рдпрд╣рд╛рдБ рдореЗрд░рд╛ рдХрд╛рд░реНрдп рд╣реИ:
     function prepareStr( $str ) { return "'". str_replace( array( '\\', "\0", "\n", "\r", "'", '"', "\x1a" ), array( '\\\\', '\\0', '\\n', '\\r', "\\'", '\\"', '\\Z' ), $str ) . "'"; } 

    рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛:
     "select * from `table` where `id`=" . prepareStr( $tag ) 

    рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдЕрдВрджрд░ рдХреЗ рдЙрджреНрдзрд░рдг рдЙрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИрдВ - рд╡рд╣ рдЙрдиреНрд╣реЗрдВ рдЦреБрдж рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ - рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рд░рдХреНрд╖рд╛ рдХрд░реЗрдЧрд╛ рдХрд┐ рдЖрдк рдЧрд▓рддреА рд╕реЗ 5 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рднреВрд▓ рд╕рдХрддреЗ рд╣реИрдВ :)

    рдпрд╣рд╛рдБ рд╕реЗ mysql рдореИрдиреНрдпреБрдЕрд▓ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рдбреЗрдЯрд╛

    рдЕрдм, mysql_real_escape_string рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛, рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЧрд▓реЗ рдореЗрдВ рдмрдврд╝рдд рдкреНрд░рд╛рдкреНрдд рдХрд░ рдЪреБрдХрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХрдиреЗрдХреНрд╢рди рдЖрдИрдбреА рд╣реИред
    рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдЙрдкрдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдореЗрд░реЗ рдкрд╛рд╕ рдирд╣реАрдВ рд╣реИ
    рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЙрд╕реЗ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдЙрдиреНрд╣реЛрдВрдиреЗ рд▓рд┐рдЦрд╛ рдХрд┐ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдпрд╣ рдареАрдХ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ :)
    рдпрджрд┐ рдЖрдк mysql рд╕реНрд░реЛрдд рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдлрд╝рд╛рдЗрд▓ mysys / charset.c рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд╕реЗ CHARSET_INFO рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдорд▓реНрдЯреАрдмрд╛рдЗрдЯ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛ рдирд╣реАрдВред
    рдФрд░ рдПрдХ рд╡рд░реНрдг рдХрд┐рддрдирд╛ рд▓рдВрдмрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рд╕реЗ рд╕рдордЭрд╛ред рд╢рд╛рдпрдж рдХреЛрдИ рдЧреБрд░реБ C рд╣реИ? рдЕрдЧрд░ рдореИрдВ рдЧрд▓рдд рд╣реВрдВ рддреЛ рдореБрдЭреЗ рд╕реБрдзрд╛рд░реЛред

    рдЪреВрдВрдХрд┐ рдореИрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп UTF рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рдпрд╛ WIN1251 рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЖрдк рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╕реЗ рдкрд░реЗрд╢рд╛рди рд╣реБрдП рдмрд┐рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рдЧрднрдЧ рддреИрдпрд╛рд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рд╡рд┐рджреЗрд╢реА рд╣реИ, рддреЛ mysql -real_escape_string рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред

    Mysql_real_escape_string рдХреА рддрд░рд╣ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдПрдХ рднреЗрджреНрдпрддрд╛ рд╣реИ - рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рджреЛрдиреЛрдВ "%" рдФрд░ "_" рд╕реЗ рдмрдЪрддреЗ рдирд╣реАрдВ рд╣реИрдВ рдЬреЛ рдХрд┐ LIKE рдкреНрд░рдХрд╛рд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
    рдлрд╝реЙрд░реНрдо рдХрд╛ рдкрд░рд┐рд░рдХреНрд╖рдг "\" рдФрд░ "\ _" LIKE рдХреЗ рдЕрдВрджрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╛рд╣рд░ - рдирд╣реАрдВ - рдпрд╣ рджреЛ рд╡рд░реНрдгреЛрдВ рдХреЛ рд▓реМрдЯрд╛рдПрдЧрд╛ред рдХреНрдпреЛрдВ? - рдЕрдЬреНрдЮрд╛рдд, рд▓реЗрдХрд┐рди рд╕рдЪ рд╣реИред
    рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдЗрд╕ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рджреЛ рддрд░реАрдХреЗ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ - рдпрд╛ рддреЛ LIKE рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрд┐рд╕реА рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдпрд╛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХрддрд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд╕рднреА рд╡рд░реНрдгреЛрдВ "%" рдФрд░ "_" рдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛

     "CONCAT( '%_', '\%\_', '%_ ')" 

    рд╢рд╛рдпрдж рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рд╣реИред

  4. рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░реНрд╕ / рддреИрдпрд╛рд░ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдпрд╛ рдЙрдиреНрд╣реЗрдВ PDO / ActiveRecord / ORM, рдЖрджрд┐ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░реЗрдВ)

    рдпреЗ, рд╡реИрд╕реЗ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдЪреАрдЬреЗрдВ рд╣реИрдВред
    рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ - рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдПрдХ рд╕рд╣рд╛рдпрдХ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рдирд┐рдпрдорд┐рдд рдкрд╛рда рдХреНрд╡реЗрд░реА рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рднреА рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рдЦреБрдж рдХреЛ рдмрдЪрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреНред рд╡рд╣ "..." рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред mysql_real_escape_string ($ рдкрд░рдо)ред "..."ред
    рдФрд░ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдмрдпрд╛рди рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрдЫрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХрдИ рдХреЙрд▓ред

    рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдПрдХ рдирд┐рдпрдорд┐рдд рд╕рд╛рдЗрдЯ рдФрд░ рдПрдХ рдирд┐рдпрдорд┐рдд рд╕реАрдЖрд░рдпреВрдбреА рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдмрдпрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдПрдХ рдмрд╛рдЬрд╝реВ рд╕реЗ рдЧреМрд░реИрдпрд╛ рдХреЛ рдЧреЛрд▓реА рдорд╛рд░рдиреЗ рдЬреИрд╕рд╛ рд╣реИред рдХреИрд╢рд┐рдВрдЧ рдЖрджрд┐ рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ рдХрдИ рдиреБрдХрд╕рд╛рди рд╣реИрдВред
    рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдпрд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рддреЛ рдареАрдХ рд╣реИ рдлрд┐рд░ рдорд╛рдорд▓рд╛ рдкрд╣рд▓реЗ рд╕реЗ рдЕрд▓рдЧ рд╣реИред

  5. рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдЖрдкрдХреЛ SQL рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдХреЛрдИ рдЪрд╛рдВрджреА рдХреА рдЧреЛрд▓реА рдирд╣реАрдВ рд╣реИред

    рдкреНрд░рд╢реНрди рд▓рд┐рдЦрддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдорд╕реНрддрд┐рд╖реНрдХ рдФрд░ рдЧрдзреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдмреНрд░рд╛рдЗрди - рдХреНрдпреЛрдВрдХрд┐ рдЙрд╕реЗ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡рд╣ рдХреНрдпрд╛ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдЧрдзреЗ - рдХреНрдпреЛрдВрдХрд┐ рдЙрд╕реЗ рд╣реЛрд╢ рд╣реИ рдХрд┐ рдХреБрдЫ рдЧрд▓рдд рд╣реИ;)

    рдФрд░ рдЕрдЧрд░ рд╣рд╛рд╕реНрдп рдХреЗ рдмрд┐рдирд╛ - рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдордЬрд╝реЗрджрд╛рд░ рд╣реИ рдЬрдм рдкреАрдбреАрдУ рдпрд╛ рддреИрдпрд╛рд░ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЙрдирдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ SQL рдЗрдВрдЬреЗрдХреНрд╢рди рд╕рдм рдХреБрдЫ рдЕрд╕рдВрднрд╡ рд╣реИ - рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рд╕рднреА рд╕рд┐рд░реНрдл рдЙрдкрдХрд░рдг рд╣реИрдВ рдЬреЛ рдЙрди рдЬрдЧрд╣реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдЯрд╛ рдирд╣реАрдВ рд╣реИ рдЙрдиреНрд╣реЗрдВред
    рдФрд░ рдЕрдЧрд░ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдиреЗ рдПрдХ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рд╡реИрд╕реЗ рднреА, рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд╣ рдЙрд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдлреЗрдВрдХрддрд╛ рд╣реИ, рд╡рд╣ рдХрдордЬреЛрд░ рд╣реЛрдЧрд╛ред



рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЙрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ (рдЬреИрд╕реЗ рдХрд┐ рдпрд╣):
 "select * from `{$table}` where `col` LIKE ?" 

рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдмрдЪ рдЧрдпрд╛ рдФрд░ рд╕рдм рдХреБрдЫ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рджрд┐рдпрд╛, рдХреЗрд╡рд▓ рд╣рдорд╛рд░рд╛ рдПрдирдХреЛрдбрд░ $ рддрд╛рд▓рд┐рдХрд╛ рдЪрд░ рдореЗрдВ рдмрд╣реБрдд рдЖрд╢реНрд╡рд╕реНрдд рдерд╛ - рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрдВрдЬрди рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ-рдЗрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдФрд░ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдереА рдЬрд╣рд╛рдБ рдЕрдкрд▓реЛрдб рдХреА рдЕрдиреБрдорддрд┐ рдереА ...
рдФрд░ рдЗрд╕рд▓рд┐рдП, рдПрдХ рдХрдордЬреЛрд░ рдкреНрд▓рдЧ-рдЗрди рдХреЗ рдХрд╛рд░рдг, рдЦрд░рд╛рдм рдЕрдВрдХрд▓ рдиреЗ рдкреВрд░реЗ рдЖрдзрд╛рд░ рдХреЛ рдорд░реНрдЬ рдХрд░ рджрд┐рдпрд╛ ...

рдЦреИрд░, рдРрд╕рд╛ рд╣реА рдХреБрдЫред
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд▓реЗрдЦреЛрдВ рдФрд░ рд░реАрдбрд┐рдВрдЧ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреЗ рдмрд╛рдж рдореЗрд░реЗ рд╕рд┐рд░ рдореЗрдВ рдЧрдбрд╝рдмрдбрд╝реА рд╕реЗ рдХрд┐рд╕реА рдХреА рдорджрдж рдХреА, рдореИрдВ рдЕрдкрдиреА рд░рдХреНрд╖рд╛ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рдРрд╕реЗ рдФрд░ рднреА рд▓реЛрдЧ рд╣реИрдВ рдЬреЛ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдЖрд╢реНрд╡рд╕реНрдд рд╣реИрдВред
рдореИрдВ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрдзрди рдХреЗ рд▓рд┐рдП рддрддреНрдкрд░ рд╣реВрдВ рдФрд░ рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

PS рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдпрджрд┐ рдЖрдк рдкрд╛рддреЗ рд╣реИрдВ - рдХреГрдкрдпрд╛ рдкреАрдПрдо рдореЗрдВред

рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ

Source: https://habr.com/ru/post/In148762/


All Articles