آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

مشکل با تک کوتیشن

مهدی  9 سال پیش  9 سال پیش
0 0

سلام دوستان

شما حتما قسمت مربوط به امنیت رو مشاهده کردید و برای فرار از sql injection علاوه بر real escap کردن موارد رو بین دوتا تک کوتیشن ( ' ) قرار میدیم.

 

من با این تک کوتیشن به مشکل بر خوردم که ممنونم میشم اجازه بدید از تجربیات تون استفاده کنم.

من در قسمت امدم توی دستور sql از دستور LIMIT استفاده کردم...

دستور LIMIT همونطور که می دونید دو تا عددمی گیره... حالا وقتی این دو تا عدد بین دوتا ' قرار می گیره دستور دیگه کار نمی کنه و خروجی مناسبب رو ندارم..

 

چه کنم برای این مشکل؟ 

0 0
جناب آقاجانی عزیز!!! لطفن حداقل خود شما پاسخ بدید! کلا انجمن رفته به بیخیالی والا (9 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
سجاد عباسی  9 سال پیش
+1 0

میتونید برای حل این مشکل متغیر رو به  int کست (‌cast ) کنید اینحوری جلوی sql injection گرفته میشه و نیازی به درج ' هم نیست:

$cleanNumber = (int)$value;

$cleanNumber = (float)$value;
+1 0
ممنون رفیق.... راستشمن قبل از اینکه این تاپیک رو بزنم چند روش رو خودم تست کرده بودم. مثل استفاده از تابع is_integer ,... که متاسفانه بدرستی عمل نمی کردند! بعد از چند دت با تابغ is_numeric آشنا شدم. با این تابع تو حلقه بررسی می کنم که اگر value عدد بود تک کوتیشن نزنه و ... (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .