urlencode()
няма какво да прави с SQL, така че той прави толкова, за да предотврати SQL инжекцията, колкото керосинът прави вашите бургери по-вкусни. Освен това всичко, което влиза във вашата база данни, в крайна сметка ще бъде кодирано с URL адрес, който след това трябва да декодирате, ако искате да направите нещо полезно с тях, след като извлечете базата данни.
Избягването на вашите заявки, от друга страна, помага на приложението ви да се предпази от SQL инжекция и нищо повече. Непроменя данните влизате във вашите запитвания; той само защитава вашите заявки от подправяне. Това е идеята на SQL инжекцията и това е и причината, поради която URL кодирането на вашите данни не прави нищо за защита срещу него. Разбира се, да обърнете апострофите си '
в %27
, което ги прави безвредни, но както беше споменато в горния параграф, ще трябва да ги декодирате обратно в апострофи, за да ги използвате.
Използвайте правилния инструмент за правилната цел. Особено през 2011 г. трябва да използвате подготвени оператори, вместо ръчно да избягвате променливите на заявката си и да свързвате низове, за да образувате заявки.