18

كيف تحلها برمجياً ؟

لديك موضوع له id معين و فى داخل الموضوع يوجد تعليقات و إمكانية إدراج مرفقات أثناء كتابة التعليق

لا أريد إستخدام multipart لأقوم بالتحميل عبر Post

أقوم بعملية رفع المرفقات عن طريق iframe مخفى و jquery

لدى فى قاعدة البيانات جدول للمرفقات و به خانة attach_comment_id تحتوى رقم التعليق المرتبط بالمرفقات لتظهر أسفله عند عرضها

تتم عملية رفع المرفق قبل أن أضغط حفظ ال comment و بالتالى ال comment لم يأخذ بعد comment_id

هذه المشكلة كانت تواجهنى من قبل و كنت أحلها بطريقة أخرى وهى إضافة row فارغ أولاً فى قاعدة البيانات ليأخذ id و من ثم أقوم بتحويل المستخدم إلى صفحة Edit لهذا ال row مرسلاً فى العنوان id الموضوع لأستخدامه فى حفظ المرفقات و لكن ذلك فى حالة إنشاء موضوع جديد أو ما شابه , أما فى حالة التعليقات لا يمكن ذلك , فهل من حل ؟


نفس الفكرة عندما يكون لديك تفاصيل تسجل في الجداول غير المرفقات

انا في العادة عند ارسال الفورم اعمل طلب لرقم ID جديد، حتى لو فشل الارسال هذا الرقم لن يستخدم مرة اخرى حتى في نفس الفورم (مالم يحتفظ بالرقم طالما الفور مازال مفتوح)

اذا كان لدي وسواس قهري مثلي تجاه ارقام ال ID الضائعة، عليك ان تتغلب على هذه المشكلة :)

نفس ذات الوسواس القهرى , فرضاً لم يقم بتسجيل التعليق , فبالتالى سيكون رفعنا ملفات على السيرفر بدون إستخدام لها أليس كذلك

صحيح، الآن انتبهت، انا متعود على Transactions

transactions على حسب معرفتى يتم هدم كل شئ تلقائياً إذا لم تكتمل كافة الخطوات بشكل سليم

صحيح لكن عبر الويب ربما توجد صعوبة في الموضوع، لكني حتى في الويب افتح ترانساكشن و اعمل Commit او الغاءه بالكامل، بالنسبة لل mysql عليك اختيار النوع المناسب لذلك.