أياكس بوست شخصيات خاصة
-
21-09-2019 - |
سؤال
كيف أقوم بتمرير سلسلة كبيرة تحتوي على أحرف مثل "٪" و "و" إلى صفحة PHP الخاصة بي من خلال Ajax Post؟
وبعبارة أخرى ، كيف تتمثل في javaScript-Encode لهم و PHP-DecoDe لهم؟
المحلول
ال encodeURIComponent()
يمكن استخدام وظيفة JavaScript للهروب من أي من تلك الأحرف في المفاتيح أو القيم.
سوف تتلقى PHP وفك تشفيرها تلقائيًا في $_POST
مجموعة مصفوفة.
يجب أن يكون تنسيق البيانات تنسيق سلسلة الاستعلام ، على وجه التحديد:
Content-Type: application/x-www-form-urlencoded
علي سبيل المثال:
Name=Joe&Age=23&City=Altoona
إذا كنت تستخدم encodeURIComponent()
في كل مفتاح وكل قيمة ، ثم انضم إليهم =
, وتجميعها بواسطة &
, ، لن يكون لديك أي مشاكل أخرى.
نصائح أخرى
لتشفيرها في JavaScript ، استخدم Encodeuri و EncodeUricompon
http://www.w3schools.com/jsref/jsref_encodeuricomponent.asp
فك تشفير PHP:
أنت في الواقع لا تحتاج إلى تشفير أو فك تشفير شيء ما ، إذا كنت تستخدم المعلمة POST في طريقة إرسال طريقة XMLHTTPREQUEST. احصل فقط على الاحتياجات والترميز ، لأنه يستخدم حقل URI. يجب أن تكون حذراً عند استخدام هذه البيانات في طلبات SQL. حذار الحقن.