رفتن به مطلب

رفع مشکل جایگذاری خودکار علامت جمع با یک خط فاصله در PHP


امیرحسین قاسمی

ارسال‌های توصیه شده

سلام

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

شما اگه بیاین از B4A یه رشته ای مثل "++C" رو از طریق GET یا POST به سرور بفرستین، PHP این رو به "  C" تبدیل خواهد کرد. این مشکل به خصوص در رشته های اینکریپت شده به وجود می آید چرا که اغلب، رشته های رمزنگاری شده دارای کاراکترهایی مثل "+" هستند.

برای حل این مشکل باید کتابخونه StringUtils رو در B4A فعال کنید.

Dim MyStr As String="C++"
Dim EU As StringUtils
MyStr=EU.EncodeUrl(MyStr,"UTF8")

در این صورت MyStr اینگونه خواهد بود: C%2B%2B و شما باید این را از طریق GET یا POST به PHP ارسال کنید.

هر 2B% در php به صورت خودکار به یک "+" ترجمه خواهد شد.

البته این قطعه کد کاراکترهای دیگری را نیز اینکد میکند و این باعث میشود رشته شما بدون کوچکترین تغییری به سرور ارسال شود.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...