اذهب إلى المحتوى
  • 0

حفظ اكثر من بيان في نفس العمود من flutter الى جدول بيانات MySQL

Flutter Dev

السؤال

مرحبا جميعا 

تحيه طيبه للجميع

وكل عام والجميع بألف صحه وعافيه وعيد مبارك لكم جميعا 

لدي استفسار لو تكرمتم 

قمت بإضافة حقول متعددة من text filed   وعددهم أربعة 

الهدف منهم هو إضافة بيانات في نفس العمود في قاعدة بيانات MySQL بالإضافة الى حقل عددهم أربعة من مربع الاختيار 

ثم قمت بإضافة دالة الحفظ التالية لحفظ البيانات بشكل متسلسل ومتتابع بمعنى كل text filed  سوف يقابله في العمود الثاني مربع الاختيار  true or false:

  void startUpload() async {

      var url = uploadEndPoint;
      var response = await http.post(Uri.parse(url), body: {
        "answers": ControllerOne.text,
        "state": _checkboxOne.toString(),
        "answers": ControllerTwo.text,
        "state": _checkboxTwo.toString(),
        "answers": ControllerThree.text,
        "state": _checkboxthree.toString(),
        "answers": ControllerFore.text,
        "state": _checkboxfore.toString(),
      });

      if (response.statusCode == 200) {
        print(response.statusCode);
      } else {}

  }

 

المشكلة في وقت تشغيل الكود الكود يذهب لحفظ اخر حقل فقط ويقوم بتجاوز الـ 3 حقول الأولى وهذا خطاء المفترض ان يعمل بشكل متتابع او متسلسل حسب ما هو معمول في الدالة أعلاه.

الجدول في قاعدة البيانات يحتوي على حقلين فقط answers + state

مرفق صوره :

627262bee15c7_Screenshot2022-05-04152529.png.70dc0ffb188852d027b59305fe57e40a.png

هل يوجد حل لفعل ذلك ؟بشكل مختلف او ما هو الخطاء لدي  

تم التعديل في بواسطة مروان مروان3
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

في كل مرة تقوم بوضع قيم داخل المتحولين state و answers سيتم إزالة المحتويات السابقة ضمن هذه المتغيّرات ووضع قيم جديدة، لذلك تجد فقط أنه تم حفظ آخر قيمة موجودة في هذه المتغيّرات.

والسبب واضح ويعود لنوع المتغيّرين state و answers، فلا يمكنك في البرمجة حفظ أكثر من قيمة ضمن متغيّر ذو قيمة وحيدة أو String مثلاً.

var myvar = "hello";

myvar = "example";

hello فقط ولن يتم الاحتفاظ بالقيمة example سيصبح محتوى المتغيّر

لذلك يجب عليك مراجعة أنماط البيانات في لغة البرمجة التي تحاول تطبيق هذه الآلية فيها والتعرّف على أنماط البيانات التي تقبل أكثر من قيمة على سبيل المثال: المصفوفات Arrays والأغراض Objects وغيرها.

var myvar = ["value1","value2","value3"];

عندها ستتمكن من الوصول إلى جميع القيم المخزنة ضمن المصفوفة

كما يجب عليك عندها تعلّم كيفية تمرير هذه القيم إلى طرف خادم الويب، فبمعظم الأحيان سيتم تحويلها إلى سلسلة نصية String وبالتالي يجب عليك إعادة تحويلها إلى نمط المصدر من طرف الخادم وإجراء بعض العمليات عليها وإعادة حفظها في النمط الملائم لجداول MySQL لديك.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...