الفكرة وصلت تماماً. أنت تريد عند كتابة رقم في الحقل zb والنقر على زر معين، أن يتم تحويل هذا الرقم إلى كلمات (تفقيط) ووضعه داخل منطقة النص sari (textarea).
لتحقيق ذلك، سنستخدم خاصية Ajax بسيطة لإرسال الرقم من المتصفح إلى ملف PHP (الذي يحتوي على مكتبة ArNumbers) ثم إعادة النص المكتوب ووضعه في الـ textarea.
إليك التعديلات المطلوبة:
1. إضافة دالة JavaScript لإرسال الرقم
أضف هذا الكود داخل وسم <script> في صفحتك. هذه الدالة تأخذ القيمة من حقل zb وترسلها لملف خارجي (سنسميه convert.php) ثم تضع النتيجة داخل المربع الكبير:
محتوى مخفي: الروابط والأكواد تظهر فقط للأعضاء الذين قاموا بالرد على هذا الموضوع.
2. تعديل الزر في الكود الخاص بك
ابحث عن الزر الذي يحمل الصورة all1.gif وقم بتغيير الـ onclick الخاص به ليقوم باستدعاء الدالة الجديدة:
محتوى مخفي: الروابط والأكواد تظهر فقط للأعضاء الذين قاموا بالرد على هذا الموضوع.
3. إنشاء ملف PHP جديد باسم convert_ajax.php
هذا الملف هو المحرك الذي سيستخدم المكتبة التي لديك (ArNumbers.class.php) لتحويل الرقم الذي أرسلناه:
محتوى مخفي: الروابط والأكواد تظهر فقط للأعضاء الذين قاموا بالرد على هذا الموضوع.
ملاحظات هامة للإصلاح في كودك الحالي:
1. الترميز (Charset): كودك يستخدم windows-1256. تأكد أن ملف convert_ajax.php محفوظ بنفس الترميز لكي تظهر الكلمات العربية بشكل صحيح.
2. اسم الحقل: في كودك الأصلي لديك input باسم zb مرتين، تأكد أن الحقل الذي يكتب فيه المستخدم الرقم هو:
<input class="form-control" name="zb" type="text">
3. مكتبة Tafqeet.js: لاحظت أنك تحاول استخدام مكتبة جافاسكريبت للتفقيط أيضاً في أعلى الكود. الطريقة التي اقترحتها لك بالأعلى تعتمد على مكتبة PHP (ArNumbers) لأنها أدق في قواعد اللغة العربية وموجودة بالفعل في ملفاتك.
باختصار: عند الضغط على الزر، سيأخذ "الرقم" من خانة zb -> يرسله لملف PHP خلف الكواليس -> يعود "بالنص العربي" -> يضعه داخل المربع postText.
تحياتي لك
اخوك مهدي حميد
تم حل مشكلة التوقيت في منتدى هيلبرنت ..